WO2021129483A1 - Method for determining point cloud bounding box, and apparatus - Google Patents

Method for determining point cloud bounding box, and apparatus Download PDF

Info

Publication number
WO2021129483A1
WO2021129483A1 PCT/CN2020/136800 CN2020136800W WO2021129483A1 WO 2021129483 A1 WO2021129483 A1 WO 2021129483A1 CN 2020136800 W CN2020136800 W CN 2020136800W WO 2021129483 A1 WO2021129483 A1 WO 2021129483A1
Authority
WO
WIPO (PCT)
Prior art keywords
bounding box
point cloud
processing device
sub
loss value
Prior art date
Application number
PCT/CN2020/136800
Other languages
French (fr)
Chinese (zh)
Inventor
李晨鸣
罗磊
彭学明
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2021129483A1 publication Critical patent/WO2021129483A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/24Aligning, centring, orientation detection or correction of the image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds

Definitions

  • This application relates to the field of detection technology, and in particular to a method and device for determining the bounding box of a point cloud.
  • lidar can complete the tracking of the target object.
  • the lidar can measure the target object to obtain the point cloud of the target object, and then obtain the envelope of the target object according to the point cloud of the target object, and determine the bounding box of the target object according to the envelope of the target object, thus completing The subsequent process of identifying or tracking the target object.
  • the bounding box of the target object can be directly obtained from the point cloud, but this method needs to process each point included in the point cloud, and the process is more complicated.
  • the convex polygon envelope of the target object may be obtained according to the point cloud, and then the bounding box of the target object may be obtained according to the convex polygon envelope.
  • multiple bounding boxes of the target object can be obtained, and then one of the multiple bounding boxes is selected as the final bounding box of the target object. This method is relatively simple, but when selecting the final bounding box from multiple bounding boxes, there is no reasonable selection method, which leads to a large error in the selected bounding box.
  • the embodiments of the present application provide a method and device for determining the bounding box of a point cloud, which are used to determine a more reasonable bounding box, so as to improve the accuracy of the target object recognition result.
  • a method for determining a bounding box of a point cloud includes: dividing a first plane where a first graphic is located into N regions according to first position information, where the first position information is determined according to the processing device The position of the point cloud and the position of the point cloud are determined, the first graphic is a two-dimensional graphic obtained by projecting the point cloud onto the first plane, the first graphic includes M edges, and the point cloud is The point data set obtained by the processing device measuring the target object, N is an integer greater than or equal to 2, and M is a positive integer; using each of the M edges as a reference edge, a bounding box is determined to obtain a total of M Bounding boxes; determining that each bounding box in the M bounding boxes corresponds to the N sub-loss values of the N regions, and the first sub-loss value of the N sub-loss values is used to measure the first sub-loss value The portion corresponding to the area corresponding to a sub-loss value in the free space occupied by
  • the method may be executed by a processing device, for example, a detection device or a detection device capable of supporting the detection device to implement the functions required by the method, such as a chip system.
  • a processing device for example, a detection device or a detection device capable of supporting the detection device to implement the functions required by the method, such as a chip system.
  • the detection device is a radar, such as a lidar or other radars
  • the processing device may be a radar, or may be a device provided in the radar that can support the functions required by the radar to implement the method, such as a chip system, Or other functional modules.
  • the first position information may, for example, indicate the relative position between the processing device and the point cloud, so that according to the relative position between the processing device and the point cloud, the first graphic in the point cloud is located.
  • a plane is divided into N areas, and the sub-loss value is calculated for each area, which is equivalent to considering the relative position between the processing device and the object when calculating the sub-loss value.
  • the bounding box determined in this way can minimize the influence of self-occlusion phenomenon on the observation result, improve the accuracy of the observation result of the target object, and then improve the subsequent processing process of tracking or identifying the target object. accuracy.
  • the embodiment of the application calculates the free space measurement of the corresponding area occupied by the bounding box, which helps to reduce the free space occupied by the bounding box, which makes the determined bounding box more accurate. .
  • dividing the first plane where the first graphic is located into N regions according to the first position information includes:
  • the first plane is divided into the N regions according to the at least one auxiliary line.
  • the area in the point cloud that is close to the processing device, or the area with higher density in the point cloud generally does not have self-occlusion.
  • the position of the point cloud can generally indicate the target object
  • the processing device has a high degree of accuracy in the observation of this part of the point cloud, so that the shape of the target object corresponding to this part of the point cloud obtained by the processing device is more accurate; Areas with a long distance between processing devices, or areas with low density in the point cloud, may have the problem of self-occlusion.
  • the processing device can determine at least one auxiliary line according to the first position information, so that the first plane can be divided into N regions through the at least one auxiliary line.
  • This method of dividing regions takes into account the position of the processing device and the position of the point cloud, so that the reliability of different regions is different, so that N regions can be considered separately, which helps to improve the accuracy of the determined bounding box. degree.
  • the method also includes:
  • each of the at least one auxiliary line as a reference edge, determine a bounding box, and determine a total of P bounding boxes;
  • Determining the bounding box corresponding to the smallest loss value as the bounding box of the point cloud includes:
  • M bounding boxes can be determined only based on M edges, without considering auxiliary lines, which helps to reduce the amount of calculation.
  • the bounding box may also be determined based on the auxiliary line.
  • each of the at least one auxiliary line may be used as a reference edge to determine the bounding box, and a total of P bounding boxes may be determined.
  • M bounding boxes are determined based on M edges, and P bounding boxes are determined based on at least one auxiliary line.
  • the N areas correspond to N confidence levels, and the N confidence levels are used to indicate the accuracy of the point data in the N areas to characterize the target object.
  • the first plane may be divided into N regions according to the reliability of the observation, or according to the accuracy of the observation, so as to facilitate the consideration of the N regions.
  • the degree of trustworthiness, or the accuracy of observation can be reflected by the degree of confidence.
  • the confidence level of an area can indicate the accuracy of the point data in the area to characterize the target object.
  • N regions correspond to N confidence levels. Quantifying the degree of trustworthiness or the accuracy of observations with confidence makes the calculation process more convenient.
  • the N confidence levels are determined according to the density of the point cloud and/or the distance from the point cloud to the processing device.
  • areas in the point cloud with different relative positions to the processing device, or areas with different densities in the point cloud may have different levels of trustworthiness.
  • the area in the point cloud that is close to the processing device, or the area with higher density in the point cloud generally does not have self-occlusion.
  • the position of the point cloud can generally indicate the target object
  • the real shape of the point cloud that is, the processing device has a high degree of reliability in the observation of this part of the point cloud, so that the shape of the target object corresponding to this part of the point cloud obtained by the processing device is more accurate; and for the point cloud Areas that are far away from the processing device, or areas with low density in the point cloud, may have the problem of self-occlusion.
  • the position of the point cloud represents the shape of the target object. There may be deviations between the actual shapes of the target object, that is, the processing device has a low degree of reliability in the observation of this part of the point cloud.
  • the trustworthiness of the area can be determined according to the density of the point cloud, or the trustworthiness of the area can be determined according to the distance from the point cloud to the processing device, or it can also be determined according to the density of the point cloud and the distance from the point cloud to the processing device.
  • the trustworthiness of the region, or the trustworthiness of the region can also be determined based on other factors.
  • the first figure is convex polygonal or elliptical.
  • the point cloud can be projected to the first plane, and a two-dimensional graph can be obtained after the projection, which is called, for example, the first graph.
  • the first figure may be a convex polygon, or it may be an ellipse or the like. This can also be understood as obtaining the convex polygonal envelope or the elliptical envelope of the point cloud based on the point cloud.
  • the first graphic may also have other shapes, which are related to the shape of the point cloud projected on the first plane, and there is no specific limitation.
  • the M bounding boxes include a first bounding box, the first bounding box corresponds to the N sub-loss values, and the N sub-loss values include the first sub-loss Value, the first sub-loss value corresponds to the first area in the N areas, and the first sub-loss value is the first area in the free space occupied by the first bounding box
  • the free space occupied by the first bounding box is determined according to the first bounding box and the N regions.
  • the relationship between bounding box, sub-loss value and area is introduced here. For each bounding box of the M bounding boxes, this relationship is similar, so here only the first bounding box is taken as an example.
  • the first bounding box is, for example, any one of M bounding boxes. Or, if P bounding boxes are also determined according to at least one auxiliary line, then the first bounding box can be considered as any one of the M+P bounding boxes.
  • the loss value corresponding to the first bounding box satisfies the following relationship:
  • cost represents the loss value corresponding to the first bounding box
  • a N represents N coefficients
  • the N coefficients correspond to the N regions one to one
  • S N represents the area of the corresponding N parts of the N regions in the free space occupied by the first bounding box
  • f(x) represents a function of x.
  • the sub-loss value of a region is related to the area of the corresponding part of the region in the free space occupied by the bounding box. For example, one way is that the sub-loss value is the area, or the other way is that the sub-loss value is a function of the area .
  • the first plane is divided into N regions.
  • the areas of the corresponding N parts of the N regions in the free space occupied by the bounding box are, for example, S 1 , S 2 , ... ,S N.
  • the N sub-loss values corresponding to the N regions are expressed as f(S 1 ), f(S 2 ),..., f(S N ), where f(x) represents x The function.
  • f(x) may be a monotonically increasing function, such as a linear function, an exponential function, or a logarithmic function.
  • f(x) may be a monotonically increasing function, such as a linear function, an exponential function, or a logarithmic function.
  • a i is one of the N coefficients
  • the a i is determined according to the i-th confidence level
  • the i-th confidence level is one of the N confidence levels
  • the a i and the i-th confidence degree both correspond to the i-th region in the N regions, and 1 ⁇ i ⁇ N.
  • Each of the N coefficients can be greater than or equal to zero.
  • some of the coefficients may be the same, or the N coefficients may all be different.
  • N coefficients can be determined according to the degree of confidence.
  • a principle for determining N coefficients is, for example, when calculating the loss value, the sub-loss value corresponding to the observation accurate area should be as large as possible after the coefficient is processed, and the sub-loss value corresponding to the observing fuzzy area should be as large as the result after the coefficient processing It should be as small as possible.
  • the processing device can determine the corresponding N sub-loss values in a similar manner, and determine the loss value according to the N sub-loss values. In this way, M loss values corresponding to M bounding boxes can be determined.
  • the free space occupied by the bounding box is used as the object to be measured by the sub-loss value, which can reduce the influence of the self-occlusion phenomenon on the observation result, compared to the area in the first plane as the measurement object
  • the method of the embodiment of the present application is more reasonable.
  • a processing device is provided, for example, the processing device is the aforementioned processing device.
  • the processing device is used to execute the method in the foregoing first aspect or any possible implementation manner.
  • the processing device may include a module for executing the method in the first aspect or any possible implementation manner, for example, including a processing module and an acquisition module.
  • the processing device is a detection device, or a chip system or other components provided in the detection device.
  • the detection device is a radar. among them,
  • the processing module is configured to divide the first plane where the first graphic is located into N regions according to the first position information, the first position information is determined according to the position of the processing device and the position of the point cloud, the first A graph is a two-dimensional graph obtained by projecting the point cloud onto the first plane, the first graph includes M edges, and the point cloud is a point data set obtained by the acquisition module measuring a target object , N is an integer greater than or equal to 2, and M is a positive integer;
  • the processing module is further configured to use each of the M edges as a reference edge to determine a bounding box, and obtain a total of M bounding boxes;
  • the processing module is further configured to determine that each of the M bounding boxes corresponds to the N sub-loss values of the N regions, and the first sub-loss value of the N sub-loss values is used for Measure the corresponding part of the area corresponding to the first sub-loss value in the free space occupied by each bounding box, and the free space occupied by each bounding box is based on each bounding box and the N Determined by a region;
  • the processing module is further configured to determine the loss value corresponding to each bounding box according to the N sub-loss values
  • the processing module is further configured to determine the bounding box corresponding to the smallest loss value as the bounding box of the point cloud.
  • the processing module is configured to divide the first plane where the first graphic is located into N regions according to the first position information in the following manner:
  • the first plane is divided into the N regions according to the at least one auxiliary line.
  • the processing module is further configured to use each of the at least one auxiliary line as a reference edge to determine a bounding box, and determine P bounding boxes in total;
  • the processing module is configured to determine the bounding box corresponding to the smallest loss value as the bounding box of the point cloud in the following manner:
  • the N regions correspond to N confidence levels, and the N confidence levels are used to indicate the accuracy of the point data in the N regions to characterize the target object.
  • the N confidence levels are determined according to the density of the point cloud and/or the distance from the point cloud to the processing device.
  • the first figure is convex polygonal or elliptical.
  • the M bounding boxes include a first bounding box, the first bounding box corresponds to the N sub-loss values, and the N sub-loss values include the first sub-loss Value, the first sub-loss value corresponds to the first area in the N areas, and the first sub-loss value is the first area in the free space occupied by the first bounding box
  • the free space occupied by the first bounding box is determined according to the first bounding box and the N regions.
  • the loss value corresponding to the first bounding box satisfies the following relationship:
  • cost represents the loss value corresponding to the first bounding box
  • a N represents N coefficients
  • the N coefficients correspond to the N regions one to one
  • S N represents the area of the corresponding N parts of the N regions in the free space occupied by the first bounding box
  • f(x) represents a function of x.
  • a i is one of the N coefficients
  • the a i is determined according to the i-th confidence level
  • the i-th confidence level is one of the N confidence levels
  • the a i and the i-th confidence degree both correspond to the i-th region in the N regions, and 1 ⁇ i ⁇ N.
  • a processing device is provided.
  • the processing device is, for example, the aforementioned processing device.
  • the processing device includes a processor and a communication interface.
  • the processor can implement the function of the processing module as described in the second aspect
  • the communication interface can implement the function of the transceiver module as described in the second aspect.
  • the processing device may further include a memory for storing computer instructions.
  • the processor, the communication interface, and the memory are coupled with each other, and are used to implement the methods described in the first aspect or various possible implementation manners.
  • the processing device may not include a memory, and the memory may be located outside the processing device.
  • the processing device when the processor executes the computer instructions stored in the memory, the processing device is caused to execute the method in the foregoing first aspect or any one of the possible implementation manners.
  • the processing device is a detection device, or a chip system or other components provided in the detection device.
  • the detection device is a radar.
  • the communication interface is implemented, for example, by the transceiver (or transmitter and receiver) in the detection device.
  • the transceiver is realized by the antenna, feeder, and codec in the detection device. ⁇ , etc. to achieve.
  • the processing device is a chip set in the detection device
  • the communication interface is, for example, the input/output interface of the chip, such as input/output pins, etc., and the communication interface is connected to the radio frequency transceiver component in the detection device to pass the radio frequency
  • the transceiver component realizes the sending and receiving of information.
  • the radar device and the processing device jointly implement the methods provided in the first aspect or various optional implementation manners.
  • the processing device is a processor provided outside the radar device, or may also be a processor provided in the radar device, such as a central processing unit.
  • the radar device is used to execute the content executed by the aforementioned detector or acquisition module, and the processing device is used to execute the content executed by the aforementioned processor or processing module. That is to say, the method provided in this application can be implemented by the radar device and the processing device. Realize together.
  • a detection system which includes the processing device described in the second aspect or the processing device described in the third aspect.
  • a smart car which includes the processing device described in the second aspect or the processing device described in the third aspect.
  • the smart car is the processing device described in the second aspect or the processing device described in the third aspect.
  • a computer-readable storage medium is provided, the computer-readable storage medium is used to store computer instructions, and when the computer instructions run on a computer, the computer executes the first aspect or any one of the above The methods described in the possible implementations.
  • a chip in a seventh aspect, includes a processor and a communication interface, the processor is coupled with the communication interface, and is configured to implement the method provided in the first aspect or any of the optional implementation manners above .
  • the chip may also include a memory.
  • the processor may read and execute a software program stored in the memory to implement the above-mentioned first aspect or any one of the optional implementation manners. method.
  • the memory may not be included in the chip, but located outside the chip, which is equivalent to that the processor can read and execute the software program stored in the external memory to implement the first aspect or Any of the methods provided by the alternative implementations.
  • a computer program product containing instructions is provided, the computer program product is used to store computer instructions, and when the computer instructions run on a computer, the computer executes the first aspect or any one of the above The methods described in the possible implementations.
  • the relative position between the processing device and the object is considered when calculating the sub-loss value.
  • the bounding box determined in this way can minimize the effect of self-occlusion on the observation result and improve
  • the accuracy of the observation result of the target object can further improve the accuracy of subsequent processing processes such as tracking or recognizing the target object.
  • Figure 1 is a schematic diagram of the self-occlusion phenomenon of the determined bounding box
  • Figure 2 is a flow chart of the basic processing procedure of the original point cloud by the lidar
  • Figures 3A to 3C are schematic diagrams of three kinds of point cloud envelopes
  • FIG. 4 is a schematic diagram of an application scenario of an embodiment of the application.
  • FIG. 5 is a flowchart of a method for determining the bounding box of a point cloud according to an embodiment of the application
  • FIG. 6C is a schematic diagram of determining auxiliary lines in an embodiment of this application.
  • FIG. 7 is a schematic diagram of a target object in an embodiment of the application.
  • FIG. 8A is a schematic diagram of a convex polygon obtained according to a target object in an embodiment of the application.
  • FIG. 8B is a schematic diagram of the sub-loss value of the area in an embodiment of the application.
  • FIG. 9A is another schematic diagram of a convex polygon obtained according to a target object in an embodiment of the application.
  • FIG. 9B is another schematic diagram of the sub-loss value of the area in the embodiment of the application.
  • FIG. 10 is a schematic structural diagram of a processing device provided by an embodiment of this application.
  • FIG. 11 is a schematic structural diagram of a processing device provided by an embodiment of this application.
  • FIG. 12 is a schematic structural diagram of a processing device provided by an embodiment of this application.
  • FIG. 13 is a schematic structural diagram of a processing device provided by an embodiment of this application.
  • the processing device or may also be called a detection device, such as a sensor, and the sensor is, for example, a radar, such as a light detection and ranging (lidar), or other types of radar.
  • the sensor may also be a sensor installed on the radar and used to collect the point cloud of the target object.
  • Free space refers to the space occupied by non-objects. In the same way, invading free space means that there is no point cloud of an object in the space, but the space is considered to belong to an object.
  • Self-occlusion refers to a phenomenon in which a certain part of the object occludes another part of the object when the sensor is observing an object, causing the occluded part of the object to be invisible or the observation result of the occluded part is inaccurate.
  • At least one refers to one or more
  • “multiple” refers to two or more.
  • “And/or” describes the association relationship of the associated objects, indicating that there can be three relationships, for example, A and/or B, which can mean: A alone exists, A and B exist at the same time, and B exists alone, where A, B can be singular or plural.
  • the character “/” generally indicates that the associated objects before and after are in an "or” relationship.
  • the following at least one item (a)” or similar expressions refers to any combination of these items, including any combination of a single item (a) or a plurality of items (a).
  • at least one item (a) of a, b, or c can mean: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or multiple .
  • first and second are used to distinguish multiple objects, and are not used to limit the size, shape, content, and order of multiple objects. , Timing, priority or importance, etc.
  • first bounding box and the second bounding box are only used to distinguish different bounding boxes, but do not indicate the difference in size, shape, priority, or importance of the two bounding boxes.
  • the so-called perception refers to perceiving the surrounding environment, such as perceiving objects in the surrounding environment, and recognizing and analyzing the perceived objects.
  • Perception plays an extremely important role in the automatic driving system/assisted driving system.
  • Lidar is one of the most important sensing sensors in automatic driving.
  • the basic process from the original point cloud to the target perception can be referred to Figure 2.
  • the original point cloud is obtained by measuring the target object by lidar. After obtaining the original point cloud, the lidar can de-ground the original point cloud, that is, remove the points corresponding to the ground in the original point cloud, which is equivalent to eliminating ground interference.
  • the lidar performs clustering processing on the point cloud after ground removal.
  • the obtained point cloud may include multiple objects.
  • the point cloud collected by the lidar includes objects such as pedestrians, vehicles, and houses.
  • the lidar can cluster the points corresponding to each object together, which is equivalent to multiple categories of points obtained by clustering, which can respectively represent different objects.
  • the lidar can obtain the point cloud envelope corresponding to each object obtained after the clustering, or, after the clustering, multiple objects may be obtained, and only some of the objects may be lasers.
  • the lidar can also only obtain the point cloud envelope of these objects.
  • the lidar can determine the bounding box of the object based on the point cloud envelope, and then can track or recognize the corresponding object based on the bounding box.
  • the point cloud envelope is an effective simplified representation of the edge of the point cloud, which can provide great help for subsequent target tracking and other operations.
  • the main forms of point cloud envelopes are convex polygons (also known as convex polygonal envelopes), ellipses (also known as elliptical envelopes), and bounding boxes (also known as bounding boxes, also known as bounding boxes). Envelope for the bounding box) these three forms.
  • the point cloud envelope may include several envelopes such as convex polygon envelope, ellipse envelope and bounding box envelope.
  • the bounding box envelope can be understood as a type of convex polygonal envelope.
  • the convex polygonal envelope when the shape of the convex polygonal envelope is a rectangle, the convex polygonal envelope can also be regarded as a bounding box envelope. If the shape of the convex polygonal envelope is not a rectangle, the convex polygonal envelope is not a bounding box envelope. If this is the case, the bounding box envelope can be further obtained based on the convex polygon envelope. In the following, for simplicity, the bounding box envelope is also referred to as a bounding box, and the convex polygonal envelope is also referred to as a convex polygon.
  • the bounding box can be understood as an imaginary outer frame surrounding the object being detected.
  • the bounding box may be the coordinates of a rectangular frame that completely encloses the digital image when the digital image is placed on a page, canvas, screen, or other similar two-dimensional background. It can be simply understood that the bounding box is a geometric body with a slightly larger volume and simple characteristics to approximate a complex geometric object.
  • FIG. 3A is a schematic diagram of a convex polygonal envelope
  • FIG. 3B is a schematic diagram of an elliptical envelope
  • FIG. 3C is a schematic diagram of a bounding box envelope.
  • the object is a vehicle as an example.
  • the bounding box structure is stable, the parameters are simple, and the accuracy of the representation of most road traffic participation targets is good, the bounding box has become the mainstream solution for representing the point cloud envelope.
  • the bounding box of the object can be obtained according to the point cloud envelope.
  • one form of the point cloud envelope is the bounding box envelope. This form is equivalent to obtaining the point cloud envelope to obtain the bounding box. If the point cloud envelope is a convex polygon envelope or an ellipse envelope, after the point cloud envelope is obtained, the bounding box of the object can be further obtained according to the point cloud envelope.
  • the bounding box can be obtained in two ways: Method one, obtain directly from the point cloud (that is, the obtained point cloud envelope is the bounding box envelope); Method two, use the two-dimensional convex polygon envelope of the point cloud, Get the final bounding box.
  • the method of obtaining the bounding box through the convex polygon envelope generally requires less calculation and better real-time performance.
  • the orientation stability of the bounding box is poor.
  • the bounding box is determined based on the convex polygon envelope, multiple bounding boxes may be determined based on one convex polygon envelope, and one bounding box needs to be selected as the final bounding box.
  • the lidar can select one of the two bounding boxes as the bounding box of the object.
  • the bounding box finally selected by the lidar is the bounding box shown by the solid rectangular box.
  • the sensor that collects the point cloud is located on the side of the solid rectangular frame, and a part of the solid rectangular frame is blocked between the point cloud and the sensor, causing the point cloud to be occluded. This is the so-called self-occlusion phenomenon.
  • the observation result of the lidar on the target object is not reasonable enough, which will also affect the accuracy of the subsequent processing of tracking or identifying the target object.
  • the first position information may, for example, indicate the relative position between the processing device and the point cloud, so that according to the relative position between the processing device and the point cloud, the first graphic in the point cloud is located.
  • a plane is divided into N areas, and the sub-loss value is calculated for each area, which is equivalent to considering the relative position between the processing device and the object when calculating the sub-loss value.
  • the bounding box determined in this way can minimize the influence of self-occlusion on the observation results, and can improve the accuracy of subsequent processing procedures such as tracking or recognizing the target object, thereby improving the accuracy of the observation result of the target object. accuracy.
  • the embodiment of the application calculates the free space measurement of the corresponding area occupied by the bounding box, which helps to reduce the free space occupied by the bounding box, which makes the determined bounding box more accurate. .
  • FIG. 4 is a schematic diagram of an application scenario of an embodiment of this application.
  • a radar is installed on vehicle A.
  • the radar can measure the surrounding environment to obtain the point cloud of objects in the surrounding environment, and can perform ground processing, clustering processing, and point cloud envelope processing on the obtained point cloud, so that the subsequent can be based on the obtained boundary
  • the frame performs operations such as tracking or recognizing the corresponding object.
  • the radar can obtain the point cloud of vehicle B, and can perform ground processing, clustering, and point cloud envelope processing on the point cloud of vehicle B, so that vehicle B can be processed according to the obtained bounding box of vehicle B Operations such as tracking or identification.
  • the position of the radar on the vehicle A is only an example, and the specific position of the radar on the vehicle is not limited to this.
  • FIG. 4 is only an example, and the application scenario of the embodiment of the present application is not limited to this.
  • the processing device provided by the embodiment of the present application may not be a radar but other equipment, and the processing device may not be installed on the vehicle, but on other equipment, such as a smart robot or a drone, or a processing device It can also be set individually.
  • the embodiment of the present application provides a method for determining the bounding box of a point cloud. Please refer to FIG. 5, which is a flowchart of the method. In the following introduction process, the application of this method to the network architecture shown in FIG. 4 is taken as an example.
  • the processing device described below may be a radar in the scene shown in FIG. 4, or a radar set in the scene shown in FIG. 4 Sensors in radar, etc.
  • the processing device is a device for collecting the point cloud, and the embodiment shown in FIG. 5 may be executed by the processing device. For example, when the processing device measures the target object, multiple points can be obtained. These points can be regarded as constituting a point data set (or called a point set).
  • the point data set can correspond to the target object, and the point data set is also It is the point cloud of the target object.
  • the first plane is, for example, a plane determined by the processing device and the target object.
  • the first plane may be a horizontal plane.
  • the horizontal plane may also be referred to as an XY plane.
  • the first plane can also be a plane at any angle.
  • the target object is not on the ground, it may be floating in the air, or the target object is a vehicle, but the vehicle is driving on a slope, etc., then the first plane can be at any angle flat.
  • the first plane can be a plane with any angle other than the second plane.
  • the processing device and the target object are projected onto a plane, which can be regarded as a second plane.
  • the first figure may be a convex polygon, or it may be an ellipse or the like. This can also be understood as obtaining the convex polygonal envelope or the elliptical envelope of the point cloud based on the point cloud.
  • the first graphic may also have other shapes, which are related to the shape of the point cloud projected on the first plane, and there is no specific limitation.
  • the first figure includes, for example, M sides, and M is a positive integer.
  • the M sides are the M sides of the convex polygon, and the M sides may include all sides of the convex polygon or part of the sides of the convex polygon.
  • M can be equal to 5 or less than 5. Because sometimes only part of the edges of the convex polygon can be used to obtain a more accurate result, the M edges do not need to include all the edges of the convex polygon, which also helps to reduce the amount of calculation.
  • the M edges are all or part of the edges of the ellipse used to be fitted. For example, by fitting 1132 edges, an ellipse can be obtained, and M can be equal to 1132 or less than 1132.
  • the value of M may depend on the point cloud. If the shape of the point cloud is different, the value of M may also be different, so there is no restriction on the specific value of M.
  • the processing device may divide the first plane into N areas.
  • areas in the point cloud with different relative positions from the processing device, or areas with different densities in the point cloud may have different observation accuracy.
  • the so-called observation accuracy refers to the accuracy with which the point data in the area in the point cloud characterizes the target object.
  • the higher the accuracy of the processing device's observation of an area in the point cloud the higher the reliability of the area.
  • the lower the accuracy of the processing device's observation of an area in the point cloud indicating the reliability of the area
  • the area in the point cloud that is close to the processing device, or the area with higher density in the point cloud generally does not have self-occlusion.
  • the position of the point cloud can generally indicate the target object
  • the processing device has a high degree of accuracy in the observation of this part of the point cloud, so that the shape of the target object corresponding to this part of the point cloud obtained by the processing device is more accurate;
  • Areas with a long distance between processing devices, or areas with a low density in the point cloud, may have the problem of self-occlusion (for the introduction of self-occlusion phenomenon, please refer to the previous article).
  • the point cloud The position of indicates that there may be a deviation between the shape of the target object and the actual shape of the target object, that is, the observation accuracy of this part of the point cloud by the processing device is low.
  • the embodiment of the present application proposes that the first plane can be divided into N regions according to the reliability of the observation, or according to the accuracy of the observation, so that the N regions can be considered separately.
  • the degree of trustworthiness, or the accuracy of observation can be reflected by the degree of confidence.
  • the confidence level of an area can indicate the accuracy of the point data in the area to characterize the target object.
  • an area with a higher degree of confidence can also be referred to as an accurate observation area
  • an area with a lower degree of confidence can also be referred to as a fuzzy observation area.
  • the reliability of the observation of the point cloud by the processing device is related to the position of the processing device and the position of the point cloud, or the density of the point cloud. Therefore, the confidence level corresponding to the area is also related to the processing device.
  • the position of is related to the position of the point cloud, or is related to the density of the point cloud.
  • the density of the point cloud is also related to the location of the processing device and the location of the point cloud. For example, an area in the point cloud that is closer to the processing device may have a higher density, while an area in the point cloud that is farther away from the processing device may have a lower density.
  • the first position information can be used.
  • the first position information can be based on the position of the processing device and the point cloud.
  • the first position information may reflect the relative position between the processing device and the point cloud.
  • an area in the first plane that is closer to the processing device may have a higher confidence level, while an area in the first plane that is farther away from the processing device may have a lower confidence level.
  • the processing device can determine at least one auxiliary line according to the first position information, so that the first plane can be divided into N areas through the at least one auxiliary line.
  • N regions correspond to N confidence levels, where the regions and the confidence levels may have a one-to-one correspondence.
  • some of the confidences may be the same, or all of the N confidences are different.
  • there is no restriction on the value of N for example, the value of N can be larger, so that the granularity of the division is lower, and more accurate results can be obtained; or the value of N can also be smaller, which helps reduce the amount of calculation.
  • each area may include point data in the point cloud, or some areas may not include point data in the point cloud.
  • each of the N regions may have an intersection with the first graphic, or some regions may not have an intersection with the first graphic.
  • the confidence level can be related to the density of the point cloud. It can be understood that the N regions can correspond to N confidence degrees, and the less point data included in the region, the lower the corresponding confidence level may be. The more point data of the region, the greater the confidence level may be.
  • auxiliary lines there is no limitation on the number of auxiliary lines, as long as the first plane can be divided into N regions by at least one auxiliary line.
  • the essence of the auxiliary line is the dividing line of different confidence levels (or the dividing line of the regions corresponding to different confidence levels), so there is no restriction on the shape of the auxiliary line.
  • the auxiliary line can be any curve or polyline in the two-dimensional space, and if there are multiple auxiliary lines, the shapes of the different auxiliary lines can be the same, for example, all are curves or all straight lines, or they can be different, for example,
  • the auxiliary line of is a curve, and the auxiliary line is a straight line.
  • the distance to the processing device is different. The distance between the area 1 and the processing device is shorter, and the distance between the area 2 and the processing device is longer, and the corresponding confidence of the area 1 is The degree of confidence is higher, and the confidence degree corresponding to region 2 is lower.
  • Area 1 can be referred to as the accurate observation area
  • area 2 can be referred to as the observing fuzzy area.
  • the distance to the processing device is different. The distance between the area 1 and the processing device is shorter, and the distance between the area 2 and the processing device is longer, and the corresponding confidence of the area 1 is The degree of confidence is higher, and the confidence degree corresponding to region 2 is lower.
  • Area 1 can be referred to as the accurate observation area, and area 2 can be referred to as the observing fuzzy area. It can be seen from FIG. 6A and FIG. 6B that because the divided area is related to the relative position between the processing device and the point cloud, when the position of the processing device is different, the division result of the area will also be different.
  • Fig. 6A and Fig. 6B both take the example of N areas including point data. Or it is also possible that some of the N areas do not include point data. For example, in FIG. 6A, it is possible that area 1 includes point data and area 2 does not include point data; or in FIG. 6B, it is possible that area 1 includes point data, but area 2 does not include point data.
  • the processing device determines at least one auxiliary line according to the first position information.
  • the number of auxiliary lines may be one, or of course there may be multiple auxiliary lines.
  • N the number of auxiliary lines is 1, and the auxiliary line is a straight line as an example, a way to determine the auxiliary line is introduced: 1) The processing device determines to scan the target object When determining the leftmost scan line and the rightmost scan line, as shown by the two dashed lines in FIG. 6A or FIG.
  • the processing device selects the two scan lines and the two convex polygons (that is, the first pattern)
  • the intersection points are two scanning endpoints, such as the two points shown in A and B in FIG. 6A or FIG. 6B; 3) the processing device determines the straight line 2 passing through these two endpoints as an auxiliary line.
  • the processing device can draw multiple rays from point O of ⁇ AOB, and divide the area covered by ⁇ AOB into multiple fan-shaped parts. For example, one part is the area covered by ⁇ AOC, and the other part is the area covered by ⁇ COD, where C and D represent two rays, and so on.
  • the scan line moves gradually, and may move a certain degree each time (for example, 0.2° each time).
  • the processing device can divide the area covered by ⁇ AOB into multiple parts according to the scan line, for example The angle corresponding to each part is 0.2°. 3) For each part obtained by dividing ⁇ AOB, a critical point can be found.
  • the final auxiliary line is curve 1 in FIG. 6C.
  • the position can be determined as the position of the critical point.
  • the value of Q or the first ratio may be specified by an agreement, or may be determined by the processing device, or may also be pre-configured in the processing device.
  • the number of auxiliary lines is 1 as an example. Or, if the number of auxiliary lines is greater than 1, the processing device may also determine the auxiliary lines in other ways, and there is no restriction on the way of determining the auxiliary lines.
  • the first graph corresponds to M edges, and one edge is used as a reference edge to get a bounding box. Then, based on M edges, M bounding boxes can be obtained.
  • the shape of the bounding box is a rectangle as an example. For example, for one of the M edges, to determine the bounding box corresponding to this edge, you can use this edge as an edge of the bounding box, and the determined bounding box needs to include the first graphic, and Make the area of the bounding box except the first graphic as small as possible. According to this principle, the bounding box uniquely corresponding to this side can be determined.
  • FIG. 7 is a schematic diagram of the target object
  • the target object is, for example, a vehicle.
  • the processing device measures the front part of the target object (the convex polygon in FIG. 7 represents the measurement of the front part) to obtain a point cloud corresponding to the front part.
  • the processing device projects the point cloud onto the first plane to obtain a first graph.
  • the first graph may refer to FIG. 8A, which is the convex polygon in FIG. 8A.
  • the processing device determines at least one auxiliary line according to the first position information, and divides the first plane into N areas through the at least one auxiliary line.
  • the M edges may include all the edges of the first graphic, or may also include part of the edges of the first graphic, for example, only include the auxiliary lines in the first graphic. The lower side.
  • the corresponding bounding box For each of the M edges, the corresponding bounding box can be determined in the above manner, so that M bounding boxes can be obtained.
  • the bounding box may also be determined based on auxiliary lines.
  • each of the at least one auxiliary line may be used as a reference edge to determine the bounding box, and a total of P bounding boxes may be determined.
  • the value of P can be the same as the number of at least one auxiliary line.
  • the auxiliary line cannot be used as an edge of the bounding box, but may be located in the bounding box.
  • P bounding boxes are to be determined based on at least one auxiliary line.
  • M edges and at least one auxiliary line if there are two edges that are parallel or perpendicular, you only need to determine a bounding box based on any one of the two edges. All edges determine the bounding box.
  • each of the M bounding boxes corresponds to N sub-loss values of the N regions.
  • N sub-loss values can be determined.
  • the sub-loss values corresponding to different bounding boxes may be the same or different.
  • the bounding box corresponds to N sub-loss values, any one of the N sub-loss values , Can be used to measure the corresponding part of the region corresponding to the sub-loss value in the free space occupied by the bounding box.
  • the area corresponding to the sub-loss value refers to the area corresponding to the sub-loss value among the N areas divided by the auxiliary line.
  • the meaning of the sub-loss value is similar.
  • the free space occupied by a bounding box can be determined according to the bounding box and N regions.
  • the auxiliary line is used as the boundary.
  • the area that has an intersection with the first graphic the area located in the first bounding box and outside the first graphic
  • the part can be called the corresponding part of the area in the free space occupied by the first bounding box; in addition, in the first plane where the first graph is located, with the auxiliary line as the boundary, for the area that does not intersect with the first graph, There is no corresponding part in the free space occupied by the first bounding box, or in other words, the area that does not intersect with the first graphic is empty in the free space occupied by the first bounding box, in other words, the first bounding box occupies In the free space of, the area that does not intersect with the first graph among the N areas is not included.
  • the free space occupied by the first bounding box includes a portion of the N areas that overlaps with the first graph and is located in the first bounding box and outside the first graph.
  • the free space occupied by the bounding box here corresponds to the bounding box.
  • the areas included in the free space occupied by the bounding boxes may be different.
  • For each of the N regions of the bounding box there are one-to-one corresponding sub-loss values, and there are a total of N sub-loss values.
  • Each sub-loss value can be understood as representing the accuracy of the point cloud described by the bounding box in the corresponding region.
  • the first bounding box of M bounding boxes can correspond to N sub-loss values.
  • the N sub-loss values include, for example, the first sub-loss value.
  • the first sub-loss value can be used to measure that the area corresponding to the first sub-loss value is in the first bounding box. The corresponding part of the occupied free space.
  • the area corresponding to the first sub-loss value refers to the first area corresponding to the first sub-loss value among the N areas divided by the auxiliary line.
  • the free space occupied by the first bounding box here is Refers to the free space occupied by the first bounding box, or in other words, the free space corresponding to the first bounding box.
  • the free space occupied by the first bounding box has been introduced above.
  • the sub-loss value of a region may be related to the area of the corresponding part of the region in the free space occupied by the region.
  • the free space occupied refers to the bounding box. Free space occupied.
  • a bounding box can be determined, and you can refer to FIG. 8B.
  • the plane where the convex polygon is located is divided into two regions by auxiliary lines, and both regions include point data.
  • the oblique line represents the free space occupied by the bounding box.
  • the first plane shown in FIG. 8B is divided into two regions, where the confidence level corresponding to region 1 is higher, and the confidence level corresponding to region 2 is lower.
  • the corresponding part of area 1 in the free space occupied by the bounding box is the part shown by "/" in FIG. 8B
  • the corresponding part of area 2 in the free space occupied by the bounding box is the part in FIG. 8B
  • the part shown by " ⁇ " Then, the sub-loss value of area 1 may be related to the area of the part shown by "/" in FIG. 8B, and the sub-loss value of area 2 may be related to the area of the part shown by " ⁇ " in FIG. 8B.
  • a bounding box can be determined, and you can refer to FIG. 9B.
  • the plane where the convex polygon is located is divided into two areas by the auxiliary line, but area 2 does not include point data, and area 1 includes point data.
  • the oblique line represents the free space occupied by the bounding box.
  • the first plane shown in FIG. 9B is divided into two regions, where the confidence level corresponding to region 1 is higher, and the confidence level corresponding to region 2 is lower.
  • the corresponding part of area 1 in the free space occupied by the bounding box is the part marked by "/" in FIG. 9B, and area 2 has no corresponding part in the free space occupied by the bounding box.
  • the sub-loss value of area 1 may be related to the area of the part marked by "/" in FIG. 9B, and the sub-loss value of area 2 may be zero.
  • the sub-loss value of a region is related to the area of the corresponding part of the region in the free space occupied by the bounding box.
  • the sub-loss value is the area, or another implementation is that the sub-loss value is a function of the area.
  • the sub-loss value corresponding to this type of region can be greater than 0; while in the N regions, for and The first graph has no intersection area, because there is no corresponding part in the free space occupied by the bounding box, so the sub-loss value corresponding to this type of area can be equal to zero.
  • the first plane is divided into N regions.
  • the corresponding areas of the N regions in the free space occupied by the bounding box are, for example, S 1 , S 2 , ..., S N, respectively .
  • the N sub-loss values corresponding to the N regions are expressed as f(S 1 ), f(S 2 ),..., f(S N ), where f(x) represents x The function.
  • f(x) may be a monotonically increasing function, such as a linear function, an exponential function, or a logarithmic function.
  • S54 Determine the loss value corresponding to each bounding box according to the N sub-loss values corresponding to each bounding box.
  • the processing device can obtain the loss value corresponding to the bounding box according to the N sub-loss values.
  • the loss value according to the sub-loss value may satisfy the following relationship:
  • cost represents the sub-loss value corresponding to the first bounding box
  • a 1 , a 2 ,..., a N represents N coefficients, and these N coefficients correspond to N regions one-to-one.
  • S 1 , S 2 ,..., S N respectively represent the area of the corresponding N parts of the N regions in the free space occupied by the first bounding box.
  • S 1 represents that the first region of the N regions is at the first boundary
  • S 2 represents the area of the corresponding part of the second area of the N regions in the free space occupied by the first bounding box, and so on.
  • f(S 1 ), f(S 2 ),..., f(S N ) represents the N sub-loss values of N regions, for example, f(S 1 ) represents the sub-loss value of the first region among the N regions, And so on.
  • Each of the N coefficients can be greater than or equal to zero.
  • some of the coefficients may be the same, or the N coefficients may all be different.
  • N coefficients can be determined according to the degree of confidence.
  • a principle for determining N coefficients is, for example, when calculating the loss value, the weight of the sub-loss value corresponding to the accurate observation area should be as large as possible, and the weight of the sub-loss value corresponding to the observable fuzzy area should be as small as possible, or in other words, confidence
  • the weight of the sub-loss value corresponding to the area with higher degree should be as large as possible, and the weight of the sub-loss value corresponding to the area with lower confidence degree should be as small as possible.
  • a i is one of N coefficients
  • a i can be determined according to the i-th confidence level
  • the i-th confidence level is one of the N confidence levels
  • both a i and the i-th confidence level correspond to N regions
  • the i-th region in, 1 ⁇ i ⁇ N.
  • the coefficient a 1 corresponds to area 1
  • the coefficient a 2 corresponds to area 2
  • a 1 can be determined according to the confidence of area 1
  • a 2 can be determined according to the confidence of area 2
  • the confidence of area 1 is greater than the confidence of area 2.
  • Degree, then a 1 can be greater than a 2 .
  • the processing device can determine the corresponding N sub-loss values in a similar manner, and determine the loss value according to the N sub-loss values. In this way, M loss values corresponding to M bounding boxes can be determined.
  • the processing device can determine the corresponding N sub-loss values in a similar manner, and determine the loss value according to the N sub-loss values. In this way, M loss values corresponding to M bounding boxes can be determined.
  • the processing device can determine the corresponding N sub-loss values in a similar manner, and determine the loss value according to the N sub-loss values. In this way, M loss values corresponding to M bounding boxes can be determined.
  • the processing device can determine the corresponding N sub-loss values in a similar manner, and determine the loss value according to the N sub-loss values. In this way, M loss values corresponding to M bounding boxes can be determined.
  • the method of the embodiment of this application is more reasonable.
  • the processing device may first determine M bounding boxes, and after the M bounding boxes are all determined, respectively determine the N sub-loss values corresponding to each bounding box of the M bounding boxes; or, process The device may also determine the N sub-loss values corresponding to the bounding box after determining a bounding box, and then determine the next bounding box and its sub-loss values.
  • the loss value can also be determined in a similar manner, then P loss values can be determined. If this is the case, it is equivalent to that the processing device has determined a total of M+P loss values.
  • the processing device may first determine M bounding boxes, and after the M bounding boxes are all determined, respectively determine the N sub-loss values corresponding to each bounding box of the M bounding boxes, and then determine P bounding boxes, after the P bounding boxes are determined, the N sub-loss values corresponding to each bounding box of the P bounding boxes are determined respectively; or, the processing device may first determine M+P bounding boxes, and wait for M After the +P bounding boxes are all determined, respectively determine the N sub-loss values corresponding to each bounding box in the M+P bounding boxes; alternatively, the processing device can also determine a bounding box in the M bounding boxes.
  • the processing device may also determine a boundary After the box, the N sub-loss values corresponding to the bounding box are determined, and then the next bounding box and its sub-loss values are determined, without distinguishing whether the bounding box belongs to M bounding boxes or P bounding boxes.
  • the processing device can determine the minimum of the M loss values corresponding to the M bounding boxes, and assign the minimum value to The bounding box is determined as the bounding box of the point cloud. In this way, there is no need to consider the bounding box corresponding to the auxiliary line, and the calculation amount can be reduced.
  • the processing device can determine M loss values and P bounding boxes corresponding to the M bounding boxes
  • the minimum value of the corresponding P loss values (M+P loss values in total), and the bounding box corresponding to the minimum value is determined as the bounding box of the point cloud.
  • both the edge corresponding to the first graph and the auxiliary line can be considered.
  • the range of options when selecting the bounding box of the point cloud is larger, which can make the selected bounding box more accurate.
  • the processing device may determine the loss value corresponding to the bounding box after all the sub-loss values corresponding to the bounding box are determined; or the processing device may determine the boundary after determining the N sub-loss values corresponding to a bounding box The loss value corresponding to the box, and then the sub-loss value corresponding to the next bounding box and the corresponding loss value are determined.
  • the first position information may, for example, indicate the relative position between the processing device and the point cloud, so that the first plane in the point cloud can be divided into N according to the relative position between the processing device and the point cloud.
  • the sub-loss value is calculated separately for each area, which is equivalent to considering the relative position between the processing device and the object when calculating the sub-loss value.
  • the embodiment of the present application may divide the processing device into functional modules.
  • each functional module may be divided corresponding to each function, or two or more functions may be integrated into one functional module.
  • the above-mentioned integrated modules can be implemented in the form of hardware or software functional modules. It should be noted that the division of modules in the embodiments of the present application is illustrative, and is only a logical function division, and there may be other division methods in actual implementation.
  • FIG. 10 shows a possible schematic structural diagram of the processing apparatus involved in the foregoing embodiment of the present application.
  • the processing device 10 is, for example, the processing device involved in the embodiment shown in FIG. 5, or the processing device 10 may also be a chip or other functional components provided in a detection device, and the detection device is, for example, a radar (or a radar device).
  • the processing device 10 may include a processing module 1001 and a transceiver module 1002.
  • the processing module 1001 may be a processor, such as a baseband processor.
  • the baseband processor may include one or more central processing units (CPU), and the transceiver module 1002 may be a transceiver, It can include antennas and radio frequency circuits.
  • the processing module 1001 may be a processor, such as a baseband processor, and the transceiver module 1002 may be a radio frequency unit.
  • the processing module 1001 may be a processor of the chip system and may include one or more central processing units, and the transceiver module 1002 may be an input and output interface of the chip system (for example, a baseband chip).
  • the processing module 1001 can be used to perform all operations performed by the processing device in the embodiment shown in FIG. 5 except for the operations of collecting point clouds, such as S51 to S55, and/or to support the operations described herein. Other processes of technology.
  • the transceiver module 1002 may be used to perform all the collection operations performed by the processing device in the embodiment shown in FIG. 5, such as the operation of collecting the point cloud of the target object, and/or other processes used to support the technology described herein.
  • the transceiver module 1002 may be a functional module that can perform both sending and receiving operations.
  • the transceiver module 1002 may be used to perform all the sending and receiving operations performed by the processing device 10, for example, When performing a sending operation, the transceiver module 1002 can be considered as a sending module, and when performing a receiving operation, the transceiver module 1002 can be considered as a receiving module; or, the transceiver module 1002 can also be a collective term for two functional modules. They are a sending module and a receiving module.
  • the sending module is used to complete the sending operation.
  • the sending module can be used to perform all the sending operations performed by the processing device 10
  • the receiving module is used to complete the receiving operation.
  • the receiving module can be used to perform All receiving operations performed by the processing device 10.
  • the transceiver module 1002 may not belong to the processing device 10.
  • the transceiver module 1002 and the processing device 10 are both located in the same vehicle.
  • the transceiver module 1002 is, for example, a communication unit in the vehicle.
  • the transceiver module 1002 and the processing device 10 can communicate.
  • the processing device 10 may not need to actively detect the target, and only perform processing based on the point cloud data received by the transceiver module 1002.
  • the processing module 1001 is configured to divide the first plane where the first graphic is located into N regions according to the first position information, the first position information is determined according to the position of the processing device and the position of the point cloud, the The first graphic is a two-dimensional graphic obtained by projecting the point cloud onto the first plane, the first graphic includes M edges, and the point cloud is a set of point data obtained by the transceiver module 1002 measuring the target object , N is an integer greater than or equal to 2, and M is a positive integer;
  • the processing module 1001 is further configured to determine a bounding box using each of the M edges as a reference edge, and obtain a total of M bounding boxes;
  • the processing module 1001 is further configured to determine that each bounding box in the M bounding boxes corresponds to the N sub-loss values of the N regions, and the first sub-loss value of the N sub-loss values is used to measure The portion corresponding to the area corresponding to the first sub-loss value in the free space occupied by each bounding box, and the free space occupied by each bounding box is based on each bounding box and the N Regionally determined
  • the processing module 1001 is further configured to determine the loss value corresponding to each bounding box according to the N sub-loss values;
  • the processing module 1001 is further configured to determine the bounding box corresponding to the smallest loss value as the bounding box of the point cloud.
  • the processing module 1001 is configured to divide the first plane where the first graphic is located into N regions according to the first position information in the following manner:
  • the first plane is divided into the N regions according to the at least one auxiliary line.
  • the processing module 1001 is further configured to use each of the at least one auxiliary line as a reference edge to determine a bounding box, and determine P bounding boxes in total;
  • the processing module 1001 is configured to determine the bounding box corresponding to the smallest loss value as the bounding box of the point cloud in the following manner:
  • the N areas correspond to N confidence levels, and the N confidence levels are used to indicate the accuracy of the point data in the N areas to characterize the target object.
  • the N confidence levels are determined according to the density of the point cloud and/or the distance from the point cloud to the processing device.
  • the first figure is convex polygonal or elliptical.
  • the M bounding boxes include a first bounding box, the first bounding box corresponds to the N sub-loss values, and the N sub-loss values include the first sub-loss values ,
  • the first sub-loss value corresponds to a first area in the N areas, and the first sub-loss value is a value corresponding to the first area in the free space occupied by the first bounding box Area, the free space occupied by the first bounding box is determined according to the first bounding box and the N areas.
  • the loss value corresponding to the first bounding box satisfies the following relationship:
  • cost represents the loss value corresponding to the first bounding box
  • a N represents N coefficients
  • the N coefficients correspond to the N regions one to one
  • S N represents the area of the corresponding N parts of the N regions in the free space occupied by the first bounding box
  • f(x) represents a function of x.
  • a i is one of the N coefficients
  • the a i is determined according to the i-th confidence level
  • the i-th confidence level is one of the N confidence levels
  • the a i and the i-th confidence degree both correspond to the i-th region in the N regions, and 1 ⁇ i ⁇ N.
  • FIG. 11 is a schematic diagram of another possible structure of the processing apparatus provided by an embodiment of the application.
  • the processing device 11 may include a processor 1101 and a transceiver 1102, the functions of which may correspond to the specific functions of the processing module 1001 and the transceiver module 1002 shown in FIG. 10 respectively, and will not be repeated here.
  • the processing device 11 may further include a memory 1103 for storing program instructions and/or data for the processor 1101 to read.
  • the processing device 11 may not include the memory 1103, and the memory 1103 may be located outside the processing device 11.
  • Fig. 12 provides a schematic diagram of another possible structure of the processing device.
  • the processing devices provided in FIGS. 10 to 12 can implement the functions of the processing devices in the foregoing embodiments.
  • the processing devices provided in Figures 10 to 12 can be part or all of the radar device in the actual communication scenario, or can be a functional module integrated in the radar device or located outside the radar device, for example, can be a chip system, specifically to achieve the corresponding
  • the function of the processing device shall prevail, and the structure and composition of the processing device shall not be specifically limited.
  • the processing device 12 includes a transmitting antenna 1201, a receiving antenna 1202, and a processor 1203. Further optionally, the processing device 12 further includes a mixer 1204 and/or an oscillator 1205. Further optionally, the processing device 12 may also include a low-pass filter and/or a directional coupler, etc. Among them, the transmitting antenna 1201 and the receiving antenna 1202 are used to support the processing device 12 to perform radio communication, the transmitting antenna 1201 supports the transmission of radar signals, and the receiving antenna 1202 supports the reception of radar signals and/or the reception of reflected signals to finally realize the detection function.
  • the processor 1203 performs some possible determination and/or processing functions. Further, the processor 1203 also controls the operation of the transmitting antenna 1201 and/or the receiving antenna 1202.
  • the signal to be transmitted is transmitted by the processor 1203 controlling the transmitting antenna 1201, and the signal received through the receiving antenna 1202 can be transmitted to the processor 1203 for corresponding processing.
  • the various components included in the processing device 12 can be used to cooperate to execute the method provided in the embodiment shown in FIG. 5.
  • the processing device 12 may also include a memory for storing program instructions and/or data.
  • the transmitting antenna 1201 and the receiving antenna 1202 may be set independently, or may be integratedly set as transmitting and receiving antennas to perform corresponding transmitting and receiving functions.
  • FIG. 13 is a schematic structural diagram of an apparatus 13 provided by an embodiment of this application.
  • the device 13 shown in FIG. 13 may be the processing device itself, or may be a chip or circuit capable of completing the functions of the processing device, for example, the chip or circuit may be provided in a radar device.
  • the apparatus 13 shown in FIG. 13 may include a processor 1301 (for example, the processing module 1001 may be implemented by the processor 1301, and the processor 1101 and the processor 1301 may be the same component, for example) and an interface circuit 1302 (for example, the transceiver module 1002 may be implemented by the interface circuit 1302, the transceiver 1102 and the interface circuit 1302 are, for example, the same component).
  • a processor 1301 for example, the processing module 1001 may be implemented by the processor 1301, and the processor 1101 and the processor 1301 may be the same component, for example
  • an interface circuit 1302 for example, the transceiver module 1002 may be implemented by the interface circuit 1302, the transceiver 1102 and the interface circuit
  • the processor 1301 may enable the device 13 to implement the steps executed by the processing device in the method provided in the embodiment shown in FIG. 5.
  • the device 13 may further include a memory 1303, and the memory 1303 may be used to store instructions.
  • the processor 1301 executes the instructions stored in the memory 1303 to enable the device 13 to implement the steps executed by the processing device in the method provided in the embodiment shown in FIG. 5.
  • the processor 1301, the interface circuit 1302, and the memory 1303 can communicate with each other through internal connection paths, and transfer control and/or data signals.
  • the memory 1303 is used to store a computer program, and the processor 1301 can call and run the computer program from the memory 1303 to control the interface circuit 1302 to receive or send a signal to complete the execution of the processing device in the method provided by the embodiment shown in FIG. 5 A step of.
  • the memory 1303 may be integrated in the processor 1301, or may be provided separately from the processor 1301.
  • the interface circuit 1302 may include a receiver and a transmitter.
  • the receiver and the transmitter may be the same component or different components.
  • the component can be called a transceiver.
  • the interface circuit 1302 may include an input interface and an output interface, and the input interface and the output interface may be the same interface, or may be different interfaces respectively.
  • the device 13 may not include the memory 1303, and the processor 1301 may read instructions (programs or codes) in the memory outside the chip or circuit to implement the implementation shown in FIG. 5. The steps in the method provided by the example are processed by the device.
  • the device 13 may include a resistor, a capacitor, or other corresponding functional components, and the processor 1301 or the interface circuit 1302 may be implemented by corresponding functional components.
  • the function of the interface circuit 1302 may be implemented by a transceiver circuit or a dedicated chip for transceiver.
  • the processor 1301 may be implemented by a dedicated processing chip, a processing circuit, a processor, or a general-purpose chip.
  • a general-purpose computer may be considered to implement the processing apparatus provided in the embodiments of the present application. That is, the program codes that realize the functions of the processor 1301 and the interface circuit 1302 are stored in the memory 1303, and the processor 1301 implements the functions of the processor 1301 and the interface circuit 1302 by executing the program codes stored in the memory 1303.
  • the functions and actions of the modules or units in the device 13 listed above are only exemplary descriptions, and the functional units in the device 13 can be used to execute the actions or processing procedures performed by the processing device in the embodiment shown in FIG. 5. In order to avoid repetitive descriptions, detailed descriptions are omitted here.
  • the processing device when the processing device is implemented by software, it may be implemented in the form of a computer program product in whole or in part.
  • the computer program product includes one or more computer instructions.
  • the computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices.
  • the computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium.
  • the computer instructions may be transmitted from a website, computer, server, or data center.
  • the computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server or a data center integrated with one or more available media.
  • the usable medium may be a magnetic medium, (for example, a floppy disk, a hard disk, and a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid state disk (SSD)).
  • the processor included in the above-mentioned processing device for executing the method provided by the embodiment of the present application may be a central processing unit (CPU), a general-purpose processor, or a digital signal processor. DSP), application-specific integrated circuit (ASIC), field programmable gate array (FPGA) or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. It can implement or execute various exemplary logical blocks, modules, and circuits described in conjunction with the disclosure of this application.
  • the processor may also be a combination for realizing computing functions, for example, including a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and so on.
  • the steps of the method or algorithm described in the embodiments of the present application may be implemented in a hardware manner, or may be implemented in a manner in which a processor executes software instructions.
  • Software instructions can be composed of corresponding software modules, which can be stored in random access memory (RAM), flash memory, read-only memory (ROM), erasable programmable read-only Memory (erasable programmable read-only memory, EPROM), electrically erasable programmable read-only memory (EEPROM), register, hard disk, mobile hard disk, compact disc (read-only memory) , CD-ROM) or any other form of storage medium known in the art.
  • An exemplary storage medium is coupled to the processor, so that the processor can read information from the storage medium and write information to the storage medium.
  • the storage medium may also be an integral part of the processor.
  • the processor and the storage medium may be located in the ASIC.
  • the ASIC may be located in the processing device.
  • the processor and the storage medium may also exist as discrete components in the processing device.
  • FIGS. 10 to 13 only show simplified designs of the processing device.
  • the processing device may include any number of transceivers, processors, controllers, memories, and other possible components.
  • an embodiment of the application also provides a detection system, which includes the processing device and communication unit that executes the processing device and the communication unit mentioned in the foregoing embodiment of the application, and the communication unit is used to execute the processing device in the foregoing processing device.
  • the steps performed by the transceiver module (for example, the transceiver module 1002).
  • the detection system may be a device, and each device is located in the device as a functional module of the device, or the detection system may also include multiple devices, and the processing device and the communication unit are located in different devices.
  • the disclosed device and method may be implemented in other ways.
  • the device embodiments described above are merely illustrative.
  • the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods, for example, multiple units or components may be divided. It can be combined or integrated into another device, or some features can be omitted or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical or other forms.
  • the units described as separate parts may or may not be physically separate.
  • the parts displayed as units may be one physical unit or multiple physical units, that is, they may be located in one place, or they may be distributed to multiple different places. . Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
  • the functional units in the various embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit can be implemented in the form of hardware or software functional unit.
  • the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium.
  • the technical solutions of the embodiments of the present application are essentially or the part that contributes to the prior art, or all or part of the technical solutions can be embodied in the form of a software product, and the software product is stored in a storage medium. It includes several instructions to make a device (which may be a single-chip microcomputer, a chip, etc.) or a processor (processor) execute all or part of the steps of the methods described in the various embodiments of the present application.
  • the aforementioned storage media include: U disk, mobile hard disk, ROM, RAM, magnetic disk or optical disk and other media that can store program codes.

Abstract

A method for determining a point cloud bounding box, and an apparatus. Said method comprises: dividing a first plane occupied by a first shape into N regions according to first location information (S51); determining a bounding box using each edge of M edges to serve as a reference edge, altogether obtaining M bounding boxes (S52); determining N sub-loss values, corresponding to the N regions, for each bounding box of the M bounding boxes (S53); determining a loss value corresponding to each bounding box according to the N sub-loss values corresponding to each bounding box (S54); determining the bounding box corresponding to the smallest loss value as a point cloud bounding box (S55). Relative positions between a processing apparatus and an object are taken into consideration during computation of sub-loss values, and as such said bounding box can reduce the influence of self-occlusion on an observation result and improve the accuracy of the observation result for a target object.

Description

一种确定点云的边界框的方法及装置Method and device for determining bounding box of point cloud
相关申请的交叉引用Cross references to related applications
本申请要求在2019年12月25日提交中国国家知识产权局、申请号为201911358284.0、申请名称为“一种确定点云的边界框的方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。This application claims the priority of a Chinese patent application filed with the State Intellectual Property Office of China, the application number is 201911358284.0, and the application name is "A method and device for determining the bounding box of a point cloud" on December 25, 2019, and its entire contents Incorporated in this application by reference.
技术领域Technical field
本申请涉及探测技术领域,尤其涉及一种确定点云的边界框的方法及装置。This application relates to the field of detection technology, and in particular to a method and device for determining the bounding box of a point cloud.
背景技术Background technique
目前,激光雷达可以完成对目标对象的追踪。例如,激光雷达可以对目标对象进行测量,得到目标对象的点云,再根据目标对象的点云得到目标对象的包络,根据目标对象的包络可以确定目标对象的边界框,从而就可以完成后续的对目标对象的识别或追踪等过程。At present, lidar can complete the tracking of the target object. For example, the lidar can measure the target object to obtain the point cloud of the target object, and then obtain the envelope of the target object according to the point cloud of the target object, and determine the bounding box of the target object according to the envelope of the target object, thus completing The subsequent process of identifying or tracking the target object.
要根据目标对象的包络确定目标对象的边界框,可以有多种方式。例如可以根据点云直接获得目标对象的边界框,但这种方式需要对点云所包括的每个点都进行处理,过程较为复杂。或者,可以根据点云获得目标对象的凸多边形包络,再根据凸多边形包络获得目标对象的边界框。目前可以获得目标对象的多个边界框,再从多个边界框中选择一个作为目标对象的最终的边界框。这种方式相对来说较为简单,但是在从多个边界框中选择最终的边界框时,没有较为合理的选择方式,导致所选择的边界框误差较大。There are many ways to determine the bounding box of the target object based on the envelope of the target object. For example, the bounding box of the target object can be directly obtained from the point cloud, but this method needs to process each point included in the point cloud, and the process is more complicated. Alternatively, the convex polygon envelope of the target object may be obtained according to the point cloud, and then the bounding box of the target object may be obtained according to the convex polygon envelope. Currently, multiple bounding boxes of the target object can be obtained, and then one of the multiple bounding boxes is selected as the final bounding box of the target object. This method is relatively simple, but when selecting the final bounding box from multiple bounding boxes, there is no reasonable selection method, which leads to a large error in the selected bounding box.
发明内容Summary of the invention
本申请实施例提供一种确定点云的边界框的方法及装置,用于确定较为合理的边界框,从而提高目标对象识别结果的准确性。The embodiments of the present application provide a method and device for determining the bounding box of a point cloud, which are used to determine a more reasonable bounding box, so as to improve the accuracy of the target object recognition result.
第一方面,提供一种确定点云的边界框的方法,该方法包括:根据第一位置信息将第一图形所在的第一平面划分为N个区域,所述第一位置信息是根据处理装置的位置和点云的位置确定的,所述第一图形为将所述点云投影到所述第一平面得到的二维图形,所述第一图形包括M条边,所述点云为所述处理装置对目标对象进行测量得到的点数据集合,N为大等于2的整数,M为正整数;以所述M条边中的每条边作为参考边,确定一个边界框,共得到M个边界框;确定所述M个边界框中的每个边界框对应于所述N个区域的N个子损失值,所述N个子损失值中的第一子损失值,用于度量所述第一子损失值对应的区域在所述每个边界框侵占的自由空间中所对应的部分,所述每个边界框侵占的自由空间是根据所述每个边界框和所述N个区域确定的;根据所述N个子损失值,确定所述每个边界框对应的损失值;将最小的损失值对应的边界框确定为所述点云的边界框。In a first aspect, a method for determining a bounding box of a point cloud is provided. The method includes: dividing a first plane where a first graphic is located into N regions according to first position information, where the first position information is determined according to the processing device The position of the point cloud and the position of the point cloud are determined, the first graphic is a two-dimensional graphic obtained by projecting the point cloud onto the first plane, the first graphic includes M edges, and the point cloud is The point data set obtained by the processing device measuring the target object, N is an integer greater than or equal to 2, and M is a positive integer; using each of the M edges as a reference edge, a bounding box is determined to obtain a total of M Bounding boxes; determining that each bounding box in the M bounding boxes corresponds to the N sub-loss values of the N regions, and the first sub-loss value of the N sub-loss values is used to measure the first sub-loss value The portion corresponding to the area corresponding to a sub-loss value in the free space occupied by each bounding box, and the free space occupied by each bounding box is determined according to each bounding box and the N areas ; Determine the loss value corresponding to each bounding box according to the N sub-loss values; determine the bounding box corresponding to the smallest loss value as the bounding box of the point cloud.
该方法可以由处理装置执行,处理装置例如为探测设备或能够支持探测设备实现该方法所需的功能的探测装置,例如芯片系统。示例性地,所述探测设备为雷达,例如激光雷达或其他雷达,那么处理装置可以是雷达,或者可以是设置在雷达中的能够支持雷达实现该方法所需的功能的装置,例如芯片系统,或其他功能模块。The method may be executed by a processing device, for example, a detection device or a detection device capable of supporting the detection device to implement the functions required by the method, such as a chip system. Exemplarily, the detection device is a radar, such as a lidar or other radars, then the processing device may be a radar, or may be a device provided in the radar that can support the functions required by the radar to implement the method, such as a chip system, Or other functional modules.
在本申请实施例中,第一位置信息例如可以表示处理装置与点云之间的相对位置,从而可以根据处理装置与点云之间的相对位置,将点云中的第一图形所在的第一平面划分为N个区域,对每个区域分别计算子损失值,这样就相当于在计算子损失值时考虑了处理装置与对象之间的相对位置。通过这种方式所确定的边界框,可以尽量减小自遮挡现象对观测结果的影响,提高了对目标对象的观测结果的准确性,进而可以提高后续对目标对象的追踪或识别等处理过程的准确性。而且本申请实施例在计算损失值时,计算的是边界框侵占的相应区域的自由空间的度量,有助于减少边界框所侵占的自由空间,这也就使得所确定的边界框更为准确。In the embodiment of the present application, the first position information may, for example, indicate the relative position between the processing device and the point cloud, so that according to the relative position between the processing device and the point cloud, the first graphic in the point cloud is located. A plane is divided into N areas, and the sub-loss value is calculated for each area, which is equivalent to considering the relative position between the processing device and the object when calculating the sub-loss value. The bounding box determined in this way can minimize the influence of self-occlusion phenomenon on the observation result, improve the accuracy of the observation result of the target object, and then improve the subsequent processing process of tracking or identifying the target object. accuracy. In addition, when calculating the loss value, the embodiment of the application calculates the free space measurement of the corresponding area occupied by the bounding box, which helps to reduce the free space occupied by the bounding box, which makes the determined bounding box more accurate. .
在一种可选的实施方式中,根据第一位置信息将第一图形所在的第一平面划分为N个区域,包括:In an optional implementation manner, dividing the first plane where the first graphic is located into N regions according to the first position information includes:
根据所述第一位置信息,确定至少一条辅助线;Determine at least one auxiliary line according to the first position information;
根据所述至少一条辅助线将所述第一平面划分为所述N个区域。The first plane is divided into the N regions according to the at least one auxiliary line.
例如,点云中与处理装置之间的距离较近的区域,或者,点云中密度较大的区域,一般不存在自遮挡,对于点云的这些区域,点云的位置一般能够表示目标对象的真实外形,也就是说,处理装置对点云的这部分区域的观测准确度较高,使得处理装置得到的点云的这部分区域对应的目标对象的外形较为准确;而对于点云中离处理装置之间的距离较远的区域,或者,点云中密度较小的区域,就可能存在自遮挡的问题,对于点云的这些区域,点云的位置所表示目标对象的外形与目标对象的真实外形之间可能有偏差,也就是说,处理装置对点云的这部分区域的观测准确性较低。鉴于此,本申请实施例提出,可以将第一平面按照观测的可信赖程度,或者说按照观测准确度,划分为N个区域,从而便于对这N个区域分别进行考虑。而处理装置对点云进行观测的可信赖程度,与处理装置的位置和点云的位置有关,或者与点云的密度有关,因此,区域对应的置信度,也与处理装置的位置和点云的位置有关,或者与点云的密度有关。因此,处理装置可以根据第一位置信息,确定至少一条辅助线,从而通过至少一条辅助线,就可以将第一平面划分为N个区域。这种划分区域的方式,考虑了处理装置的位置和点云的位置,使得不同的区域的可信赖程度不同,从而可以对N个区域分别进行考虑,有助于提高所确定的边界框的准确度。For example, the area in the point cloud that is close to the processing device, or the area with higher density in the point cloud, generally does not have self-occlusion. For these areas of the point cloud, the position of the point cloud can generally indicate the target object In other words, the processing device has a high degree of accuracy in the observation of this part of the point cloud, so that the shape of the target object corresponding to this part of the point cloud obtained by the processing device is more accurate; Areas with a long distance between processing devices, or areas with low density in the point cloud, may have the problem of self-occlusion. For these areas of the point cloud, the position of the point cloud represents the shape of the target object and the target object There may be deviations between the actual shapes of the point cloud, that is to say, the observation accuracy of this part of the point cloud by the processing device is low. In view of this, the embodiment of the present application proposes that the first plane can be divided into N regions according to the reliability of the observation, or according to the accuracy of the observation, so that the N regions can be considered separately. The reliability of the observation of the point cloud by the processing device is related to the location of the processing device and the position of the point cloud, or to the density of the point cloud. Therefore, the confidence level corresponding to the area is also related to the location and point cloud of the processing device. It is related to the position or the density of the point cloud. Therefore, the processing device can determine at least one auxiliary line according to the first position information, so that the first plane can be divided into N regions through the at least one auxiliary line. This method of dividing regions takes into account the position of the processing device and the position of the point cloud, so that the reliability of different regions is different, so that N regions can be considered separately, which helps to improve the accuracy of the determined bounding box. degree.
在一种可选的实施方式中,In an alternative embodiment,
所述方法还包括:The method also includes:
以所述至少一条辅助线中的每条辅助线作为参考边,确定一个边界框,共确定P个边界框;Using each of the at least one auxiliary line as a reference edge, determine a bounding box, and determine a total of P bounding boxes;
将最小的损失值对应的边界框确定为所述点云的边界框,包括:Determining the bounding box corresponding to the smallest loss value as the bounding box of the point cloud includes:
将所述M个边界框以及所述P个边界框中,最小的损失值对应的边界框确定为所述点云的边界框。Determine the bounding box corresponding to the smallest loss value of the M bounding boxes and the P bounding boxes as the bounding box of the point cloud.
在确定边界框时,可以只是根据M条边确定M个边界框,无需考虑辅助线,这样有助于减小计算量。或者,除了可以根据M条边中的每条边确定边界框之外,还可以根据辅助线确定边界框。例如,还可以将至少一条辅助线中的每条辅助线作为参考边,确定边界框,共确定P个边界框。既根据M条边确定M个边界框,也根据至少一条辅助线确定P个边界框,在选择边界框时可以从M+P个边界框进行选择,扩大了选择范围,有利于选择到更为合适的边界框。When determining the bounding box, M bounding boxes can be determined only based on M edges, without considering auxiliary lines, which helps to reduce the amount of calculation. Alternatively, in addition to determining the bounding box based on each of the M edges, the bounding box may also be determined based on the auxiliary line. For example, each of the at least one auxiliary line may be used as a reference edge to determine the bounding box, and a total of P bounding boxes may be determined. M bounding boxes are determined based on M edges, and P bounding boxes are determined based on at least one auxiliary line. When selecting a bounding box, you can choose from M+P bounding boxes, which expands the selection range and facilitates more selection. Appropriate bounding box.
在一种可选的实施方式中,所述N个区域对应于N个置信度,所述N个置信度用于 指示所述N个区域内的点数据表征目标对象的准确度。In an optional implementation manner, the N areas correspond to N confidence levels, and the N confidence levels are used to indicate the accuracy of the point data in the N areas to characterize the target object.
本申请实施例中,可以将第一平面按照观测的可信赖程度,或者说按照观测准确度,划分为N个区域,从而便于对这N个区域分别进行考虑。例如,可信赖程度,或者说观测准确度,可以通过置信度来体现。对于第一平面的一个区域,如果处理装置对该区域进行观测的可信赖程度较高,则该区域的置信度就越高,而如果处理装置对该区域进行观测的可信赖程度较低,则该区域的置信度就越低。因此,一个区域的置信度可以指示该区域内的点数据表征目标对象的准确度。那么,N个区域就对应于N个置信度。将可信赖程度或观测准确度以置信度进行量化,更加方便了计算过程。In the embodiment of the present application, the first plane may be divided into N regions according to the reliability of the observation, or according to the accuracy of the observation, so as to facilitate the consideration of the N regions. For example, the degree of trustworthiness, or the accuracy of observation, can be reflected by the degree of confidence. For an area of the first plane, if the processing device has a higher degree of confidence in observing the area, the confidence of the area is higher, and if the processing device has a lower degree of reliability in observing the area, then The lower the confidence in this area. Therefore, the confidence level of an area can indicate the accuracy of the point data in the area to characterize the target object. Then, N regions correspond to N confidence levels. Quantifying the degree of trustworthiness or the accuracy of observations with confidence makes the calculation process more convenient.
在一种可选的实施方式中,所述N个置信度是根据所述点云的密度和/或所述点云到所述处理装置的距离确定的。In an optional implementation manner, the N confidence levels are determined according to the density of the point cloud and/or the distance from the point cloud to the processing device.
在处理装置的感知过程中,点云中与处理装置之间的相对位置不同的区域,或者点云中的密度不同的区域,可能可信赖程度不同。例如,点云中与处理装置之间的距离较近的区域,或者,点云中密度较大的区域,一般不存在自遮挡,对于点云的这些区域,点云的位置一般能够表示目标对象的真实外形,也就是说,处理装置对点云的这部分区域的观测的可信赖程度较高,使得处理装置得到的点云的这部分区域对应的目标对象的外形较为准确;而对于点云中离处理装置之间的距离较远的区域,或者,点云中密度较小的区域,就可能存在自遮挡的问题,对于点云的这些区域,点云的位置所表示目标对象的外形与目标对象的真实外形之间可能有偏差,也就是说,处理装置对点云的这部分区域观测的可信赖程度较低。因此,可以根据点云的密度确定区域的可信赖程度,或者也可以根据点云到处理装置的距离确定区域的可信赖程度,或者也可以根据点云的密度和点云到处理装置的距离确定区域的可信赖程度,或者还可以根据其他因素确定区域的可信赖程度。In the perception process of the processing device, areas in the point cloud with different relative positions to the processing device, or areas with different densities in the point cloud, may have different levels of trustworthiness. For example, the area in the point cloud that is close to the processing device, or the area with higher density in the point cloud, generally does not have self-occlusion. For these areas of the point cloud, the position of the point cloud can generally indicate the target object The real shape of the point cloud, that is, the processing device has a high degree of reliability in the observation of this part of the point cloud, so that the shape of the target object corresponding to this part of the point cloud obtained by the processing device is more accurate; and for the point cloud Areas that are far away from the processing device, or areas with low density in the point cloud, may have the problem of self-occlusion. For these areas of the point cloud, the position of the point cloud represents the shape of the target object. There may be deviations between the actual shapes of the target object, that is, the processing device has a low degree of reliability in the observation of this part of the point cloud. Therefore, the trustworthiness of the area can be determined according to the density of the point cloud, or the trustworthiness of the area can be determined according to the distance from the point cloud to the processing device, or it can also be determined according to the density of the point cloud and the distance from the point cloud to the processing device The trustworthiness of the region, or the trustworthiness of the region can also be determined based on other factors.
在一种可选的实施方式中,所述第一图形为凸多边形或椭圆形。In an optional embodiment, the first figure is convex polygonal or elliptical.
在得到目标对象的点云后,可以将该点云投影到第一平面,投影后可以得到一个二维图形,该图形例如称为第一图形。例如,第一图形可以是凸多边形,或者也可以是椭圆形等。这也可以理解为,是根据点云得到了该点云的凸多边形包络或椭圆形包络。当然第一图形也可以是其他的形状,这与点云投影到第一平面后的形状有关,具体的不做限制。After the point cloud of the target object is obtained, the point cloud can be projected to the first plane, and a two-dimensional graph can be obtained after the projection, which is called, for example, the first graph. For example, the first figure may be a convex polygon, or it may be an ellipse or the like. This can also be understood as obtaining the convex polygonal envelope or the elliptical envelope of the point cloud based on the point cloud. Of course, the first graphic may also have other shapes, which are related to the shape of the point cloud projected on the first plane, and there is no specific limitation.
在一种可选的实施方式中,所述M个边界框包括第一边界框,所述第一边界框对应于所述N个子损失值,所述N个子损失值包括所述第一子损失值,所述第一子损失值对应于所述N个区域中的第一区域,所述第一子损失值是所述第一边界框侵占的所述自由空间中对应于所述第一区域的面积,所述第一边界框侵占的所述自由空间是根据所述第一边界框和所述N个区域确定的。In an optional implementation manner, the M bounding boxes include a first bounding box, the first bounding box corresponds to the N sub-loss values, and the N sub-loss values include the first sub-loss Value, the first sub-loss value corresponds to the first area in the N areas, and the first sub-loss value is the first area in the free space occupied by the first bounding box The free space occupied by the first bounding box is determined according to the first bounding box and the N regions.
这里介绍了边界框、子损失值以及区域之间的关系。对于M个边界框中的每个边界框,这种关系都是类似的,因此这里只以第一边界框为例。第一边界框例如为M个边界框中的任意一个边界框。或者,如果还根据至少一条辅助线确定了P个边界框,那么第一边界框可以认为是M+P个边界框中的任意一个边界框。The relationship between bounding box, sub-loss value and area is introduced here. For each bounding box of the M bounding boxes, this relationship is similar, so here only the first bounding box is taken as an example. The first bounding box is, for example, any one of M bounding boxes. Or, if P bounding boxes are also determined according to at least one auxiliary line, then the first bounding box can be considered as any one of the M+P bounding boxes.
在一种可选的实施方式中,所述第一边界框对应的损失值,满足如下关系:In an optional implementation manner, the loss value corresponding to the first bounding box satisfies the following relationship:
cost=a 1f(S 1)+a 2f(S 2)+……+a Nf(S N) cost=a 1 f(S 1 )+a 2 f(S 2 )+……+a N f(S N )
其中,cost表示所述第一边界框对应的损失值,a 1,a 2,……,a N表示N个系数,所述N个系数与所述N个区域一一对应,S 1,S 2,……,S N表示所述N个区域在所述第一边界框侵占的自由空间中对应的N个部分的面积,f(x)表示x的函数。 Wherein, cost represents the loss value corresponding to the first bounding box, a 1 , a 2 ,..., a N represents N coefficients, and the N coefficients correspond to the N regions one to one, S 1 , S 2 ,..., S N represents the area of the corresponding N parts of the N regions in the free space occupied by the first bounding box, and f(x) represents a function of x.
一个区域的子损失值与该区域在边界框侵占的自由空间中对应的部分的面积有关,例如一种方式为,子损失值就是面积,或者另一种方式为,子损失值是面积的函数。例如,第一平面被划分为N个区域,对于一个边界框来说,这N个区域在该边界框侵占的自由空间中对应的N个部分的面积例如分别为S 1,S 2,……,S N。那么对于该边界框来说,这N个区域对应的N个子损失值例如表示为f(S 1),f(S 2),……,f(S N),其中,f(x)表示x的函数。在本申请实施例中,f(x)可以是单调增函数,例如线性函数、指数函数或对数函数等均可。根据N个子损失值得到对应的损失值的方式可以有多种,如上的关系只是其中的一种示例。 The sub-loss value of a region is related to the area of the corresponding part of the region in the free space occupied by the bounding box. For example, one way is that the sub-loss value is the area, or the other way is that the sub-loss value is a function of the area . For example, the first plane is divided into N regions. For a bounding box, the areas of the corresponding N parts of the N regions in the free space occupied by the bounding box are, for example, S 1 , S 2 , ... ,S N. Then for the bounding box, the N sub-loss values corresponding to the N regions are expressed as f(S 1 ), f(S 2 ),..., f(S N ), where f(x) represents x The function. In the embodiment of the present application, f(x) may be a monotonically increasing function, such as a linear function, an exponential function, or a logarithmic function. There may be many ways to obtain the corresponding loss value according to the N sub-loss values, and the above relationship is just one example.
在一种可选的实施方式中,a i是所述N个系数中的一个,所述a i是根据第i置信度确定的,所述第i置信度是N个置信度中的一个,且所述a i和所述第i置信度均对应于所述N个区域中的第i个区域,1≤i≤N。 In an optional implementation manner, a i is one of the N coefficients, the a i is determined according to the i-th confidence level, and the i-th confidence level is one of the N confidence levels, And the a i and the i-th confidence degree both correspond to the i-th region in the N regions, and 1≦i≦N.
N个系数中的每个系数,可以大于或等于0。N个系数中,可能有部分系数相同,或者N个系数也可以均不相同。例如,N个系数可以根据置信度来确定。确定N个系数的一种原则例如为,在计算损失值时,观测准确区对应的子损失值根据系数处理后的结果应该尽量大,而观测模糊区对应的子损失值根据系数处理后的结果应该尽量小,或者说,置信度较高的区域对应的子损失值根据系数处理后的结果应该尽量大,而置信度较小的区域对应的子损失值根据系数处理后的结果应该尽量小。对于M个边界框中的每个边界框,处理装置都可以按照类似的方式确定对应的N个子损失值,以及根据N个子损失值确定损失值。这样就可以确定M个边界框对应的M个损失值。在本申请实施例中,将边界框侵占的自由空间作为子损失值衡量的对象,可以使得减小自遮挡的现象对观测结果的影响,相对于将第一平面内的区域的面积作为衡量对象的方式来说,本申请实施例的方式更为合理。Each of the N coefficients can be greater than or equal to zero. Among the N coefficients, some of the coefficients may be the same, or the N coefficients may all be different. For example, N coefficients can be determined according to the degree of confidence. A principle for determining N coefficients is, for example, when calculating the loss value, the sub-loss value corresponding to the observation accurate area should be as large as possible after the coefficient is processed, and the sub-loss value corresponding to the observing fuzzy area should be as large as the result after the coefficient processing It should be as small as possible. In other words, the sub-loss value corresponding to the area with higher confidence should be as large as possible according to the result of coefficient processing, and the sub-loss value corresponding to the area with lower confidence should be as small as possible according to the result of coefficient processing. For each bounding box of the M bounding boxes, the processing device can determine the corresponding N sub-loss values in a similar manner, and determine the loss value according to the N sub-loss values. In this way, M loss values corresponding to M bounding boxes can be determined. In the embodiment of the present application, the free space occupied by the bounding box is used as the object to be measured by the sub-loss value, which can reduce the influence of the self-occlusion phenomenon on the observation result, compared to the area in the first plane as the measurement object In terms of the method, the method of the embodiment of the present application is more reasonable.
第二方面,提供一种处理装置,例如该处理装置为如前所述的处理装置。所述处理装置用于执行上述第一方面或任一可能的实施方式中的方法。具体地,所述处理装置可以包括用于执行第一方面或任一可能的实施方式中的方法的模块,例如包括处理模块和采集模块。示例性地,所述处理装置为探测设备,或者为设置在探测设备中的芯片系统或其他部件。示例性地,所述探测设备为雷达。其中,In a second aspect, a processing device is provided, for example, the processing device is the aforementioned processing device. The processing device is used to execute the method in the foregoing first aspect or any possible implementation manner. Specifically, the processing device may include a module for executing the method in the first aspect or any possible implementation manner, for example, including a processing module and an acquisition module. Exemplarily, the processing device is a detection device, or a chip system or other components provided in the detection device. Exemplarily, the detection device is a radar. among them,
所述处理模块,用于根据第一位置信息将第一图形所在的第一平面划分为N个区域,所述第一位置信息是根据处理装置的位置和点云的位置确定的,所述第一图形为将所述点云投影到所述第一平面得到的二维图形,所述第一图形包括M条边,所述点云为所述采集模块对目标对象进行测量得到的点数据集合,N为大于或等于2的整数,M为正整数;The processing module is configured to divide the first plane where the first graphic is located into N regions according to the first position information, the first position information is determined according to the position of the processing device and the position of the point cloud, the first A graph is a two-dimensional graph obtained by projecting the point cloud onto the first plane, the first graph includes M edges, and the point cloud is a point data set obtained by the acquisition module measuring a target object , N is an integer greater than or equal to 2, and M is a positive integer;
所述处理模块,还用于以所述M条边中的每条边作为参考边,确定一个边界框,共得到M个边界框;The processing module is further configured to use each of the M edges as a reference edge to determine a bounding box, and obtain a total of M bounding boxes;
所述处理模块,还用于确定所述M个边界框中的每个边界框对应于所述N个区域的N个子损失值,所述N个子损失值中的第一子损失值,用于度量所述第一子损失值对应的区域在所述每个边界框侵占的自由空间中所对应的部分,所述每个边界框侵占的自由空间是根据所述每个边界框和所述N个区域确定的;The processing module is further configured to determine that each of the M bounding boxes corresponds to the N sub-loss values of the N regions, and the first sub-loss value of the N sub-loss values is used for Measure the corresponding part of the area corresponding to the first sub-loss value in the free space occupied by each bounding box, and the free space occupied by each bounding box is based on each bounding box and the N Determined by a region;
所述处理模块,还用于根据所述N个子损失值,确定所述每个边界框对应的损失值;The processing module is further configured to determine the loss value corresponding to each bounding box according to the N sub-loss values;
所述处理模块,还用于将最小的损失值对应的边界框确定为所述点云的边界框。The processing module is further configured to determine the bounding box corresponding to the smallest loss value as the bounding box of the point cloud.
在一种可选的实施方式中,所述处理模块用于通过如下方式根据第一位置信息将第一图形所在的第一平面划分为N个区域:In an optional implementation manner, the processing module is configured to divide the first plane where the first graphic is located into N regions according to the first position information in the following manner:
根据所述第一位置信息,确定至少一条辅助线;Determine at least one auxiliary line according to the first position information;
根据所述至少一条辅助线将所述第一平面划分为所述N个区域。The first plane is divided into the N regions according to the at least one auxiliary line.
在一种可选的实施方式中,In an alternative embodiment,
所述处理模块,还用于以所述至少一条辅助线中的每条辅助线作为参考边,确定一个边界框,共确定P个边界框;The processing module is further configured to use each of the at least one auxiliary line as a reference edge to determine a bounding box, and determine P bounding boxes in total;
所述处理模块用于通过如下方式将最小的损失值对应的边界框确定为所述点云的边界框:The processing module is configured to determine the bounding box corresponding to the smallest loss value as the bounding box of the point cloud in the following manner:
将所述M个边界框以及所述P个边界框中,最小的损失值对应的边界框确定为所述点云的边界框。Determine the bounding box corresponding to the smallest loss value of the M bounding boxes and the P bounding boxes as the bounding box of the point cloud.
在一种可选的实施方式中,所述N个区域对应于N个置信度,所述N个置信度用于指示所述N个区域内的点数据表征目标对象的准确度。In an optional implementation manner, the N regions correspond to N confidence levels, and the N confidence levels are used to indicate the accuracy of the point data in the N regions to characterize the target object.
在一种可选的实施方式中,所述N个置信度是根据所述点云的密度和/或所述点云到所述处理装置的距离确定的。In an optional implementation manner, the N confidence levels are determined according to the density of the point cloud and/or the distance from the point cloud to the processing device.
在一种可选的实施方式中,所述第一图形为凸多边形或椭圆形。In an optional embodiment, the first figure is convex polygonal or elliptical.
在一种可选的实施方式中,所述M个边界框包括第一边界框,所述第一边界框对应于所述N个子损失值,所述N个子损失值包括所述第一子损失值,所述第一子损失值对应于所述N个区域中的第一区域,所述第一子损失值是所述第一边界框侵占的所述自由空间中对应于所述第一区域的面积,所述第一边界框侵占的所述自由空间是根据所述第一边界框和所述N个区域确定的。In an optional implementation manner, the M bounding boxes include a first bounding box, the first bounding box corresponds to the N sub-loss values, and the N sub-loss values include the first sub-loss Value, the first sub-loss value corresponds to the first area in the N areas, and the first sub-loss value is the first area in the free space occupied by the first bounding box The free space occupied by the first bounding box is determined according to the first bounding box and the N regions.
在一种可选的实施方式中,所述第一边界框对应的损失值,满足如下关系:In an optional implementation manner, the loss value corresponding to the first bounding box satisfies the following relationship:
cost=a 1f(S 1)+a 2f(S 2)+……+a Nf(S N) cost=a 1 f(S 1 )+a 2 f(S 2 )+……+a N f(S N )
其中,cost表示所述第一边界框对应的损失值,a 1,a 2,……,a N表示N个系数,所述N个系数与所述N个区域一一对应,S 1,S 2,……,S N表示所述N个区域在所述第一边界框侵占的自由空间中对应的N个部分的面积,f(x)表示x的函数。 Wherein, cost represents the loss value corresponding to the first bounding box, a 1 , a 2 ,..., a N represents N coefficients, and the N coefficients correspond to the N regions one to one, S 1 , S 2 ,..., S N represents the area of the corresponding N parts of the N regions in the free space occupied by the first bounding box, and f(x) represents a function of x.
在一种可选的实施方式中,a i是所述N个系数中的一个,所述a i是根据第i置信度确定的,所述第i置信度是N个置信度中的一个,且所述a i和所述第i置信度均对应于所述N个区域中的第i个区域,1≤i≤N。 In an optional implementation manner, a i is one of the N coefficients, the a i is determined according to the i-th confidence level, and the i-th confidence level is one of the N confidence levels, And the a i and the i-th confidence degree both correspond to the i-th region in the N regions, and 1≦i≦N.
第三方面,提供一种处理装置,该处理装置例如为如前所述的处理装置。该处理装置包括处理器和通信接口,例如处理器可实现如第二方面所述的处理模块的功能,通信接口可实现如第二方面所述的收发模块的功能。可选的,该处理装置还可以包括存储器,用于存储计算机指令。处理器、通信接口和存储器相互耦合,用于实现上述第一方面或各种可能的实施方式所描述的方法。或者,处理装置也可以不包括存储器,存储器可以位于处理装置外部。例如,当处理器执行所述存储器存储的计算机指令时,使处理装置执行上述第一方面或任意一种可能的实施方式中的方法。示例性地,所述处理装置为探测设备,或者为设置在探测设备中的芯片系统或其他部件。示例性的,所述探测设备为雷达。In a third aspect, a processing device is provided. The processing device is, for example, the aforementioned processing device. The processing device includes a processor and a communication interface. For example, the processor can implement the function of the processing module as described in the second aspect, and the communication interface can implement the function of the transceiver module as described in the second aspect. Optionally, the processing device may further include a memory for storing computer instructions. The processor, the communication interface, and the memory are coupled with each other, and are used to implement the methods described in the first aspect or various possible implementation manners. Alternatively, the processing device may not include a memory, and the memory may be located outside the processing device. For example, when the processor executes the computer instructions stored in the memory, the processing device is caused to execute the method in the foregoing first aspect or any one of the possible implementation manners. Exemplarily, the processing device is a detection device, or a chip system or other components provided in the detection device. Exemplarily, the detection device is a radar.
其中,如果处理装置为探测设备,通信接口例如通过所述探测设备中的收发器(或者,发送器和接收器)实现,例如所述收发器通过所述探测设备中的天线、馈线和编解码器等实现。或者,如果处理装置为设置在探测设备中的芯片,那么通信接口例如为芯片的输入/输出接口,例如输入/输出管脚等,该通信接口与探测设备中的射频收发组件连接,以通过射频收发组件实现信息的收发。Wherein, if the processing device is a detection device, the communication interface is implemented, for example, by the transceiver (or transmitter and receiver) in the detection device. For example, the transceiver is realized by the antenna, feeder, and codec in the detection device.器, etc. to achieve. Or, if the processing device is a chip set in the detection device, the communication interface is, for example, the input/output interface of the chip, such as input/output pins, etc., and the communication interface is connected to the radio frequency transceiver component in the detection device to pass the radio frequency The transceiver component realizes the sending and receiving of information.
在一种可选的实施方式中,由雷达装置和处理装置共同实现第一方面或各种可选的实 施方式所提供的方法。所述处理装置为设置在雷达装置之外的处理器,或者也可以是设置在雷达装置内的处理器,例如中央处理器等。具体的,雷达装置用于执行上述探测器或采集模块所执行的内容,处理装置用于执行上述处理器或处理模块所执行的内容,也就是说本申请提供的方法可以由雷达装置和处理装置共同实现。In an optional implementation manner, the radar device and the processing device jointly implement the methods provided in the first aspect or various optional implementation manners. The processing device is a processor provided outside the radar device, or may also be a processor provided in the radar device, such as a central processing unit. Specifically, the radar device is used to execute the content executed by the aforementioned detector or acquisition module, and the processing device is used to execute the content executed by the aforementioned processor or processing module. That is to say, the method provided in this application can be implemented by the radar device and the processing device. Realize together.
第四方面,提供一种探测系统,该探测系统包括第二方面所述的处理装置或第三方面所述的处理装置。In a fourth aspect, a detection system is provided, which includes the processing device described in the second aspect or the processing device described in the third aspect.
第五方面,提供一种智能车,所述智能车包括第二方面所述的处理装置或第三方面所述的处理装置。或者,所述智能车为第二方面所述的处理装置或第三方面所述的处理装置。In a fifth aspect, a smart car is provided, which includes the processing device described in the second aspect or the processing device described in the third aspect. Alternatively, the smart car is the processing device described in the second aspect or the processing device described in the third aspect.
第六方面,提供一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机指令,当所述计算机指令在计算机上运行时,使得所述计算机执行上述第一方面或任意一种可能的实施方式中所述的方法。In a sixth aspect, a computer-readable storage medium is provided, the computer-readable storage medium is used to store computer instructions, and when the computer instructions run on a computer, the computer executes the first aspect or any one of the above The methods described in the possible implementations.
第七方面,提供一种芯片,所述芯片包括处理器和通信接口,所述处理器与所述通信接口耦合,用于实现上述第一方面或任一种可选的实施方式所提供的方法。In a seventh aspect, a chip is provided, the chip includes a processor and a communication interface, the processor is coupled with the communication interface, and is configured to implement the method provided in the first aspect or any of the optional implementation manners above .
可选的,所述芯片还可以包括存储器,例如,所述处理器可以读取并执行所述存储器所存储的软件程序,以实现上述第一方面或任一种可选的实施方式所提供的方法。或者,所述存储器也可以不包括在所述芯片内,而是位于所述芯片外部,相当于,所述处理器可以读取并执行外部存储器所存储的软件程序,以实现上述第一方面或任一种可选的实施方式所提供的方法。Optionally, the chip may also include a memory. For example, the processor may read and execute a software program stored in the memory to implement the above-mentioned first aspect or any one of the optional implementation manners. method. Alternatively, the memory may not be included in the chip, but located outside the chip, which is equivalent to that the processor can read and execute the software program stored in the external memory to implement the first aspect or Any of the methods provided by the alternative implementations.
第八方面,提供一种包含指令的计算机程序产品,所述计算机程序产品用于存储计算机指令,当所述计算机指令在计算机上运行时,使得所述计算机执行上述第一方面或的任意一种可能的实施方式中所述的方法。In an eighth aspect, a computer program product containing instructions is provided, the computer program product is used to store computer instructions, and when the computer instructions run on a computer, the computer executes the first aspect or any one of the above The methods described in the possible implementations.
在本申请实施例中,在计算子损失值时考虑了处理装置与对象之间的相对位置,通过这种方式所确定的边界框,可以尽量减小自遮挡的现象对观测结果的影响,提高对目标对象的观测结果的准确性,进而可以提高后续对目标对象的追踪或识别等处理过程的准确性。In the embodiment of the present application, the relative position between the processing device and the object is considered when calculating the sub-loss value. The bounding box determined in this way can minimize the effect of self-occlusion on the observation result and improve The accuracy of the observation result of the target object can further improve the accuracy of subsequent processing processes such as tracking or recognizing the target object.
附图说明Description of the drawings
图1为所确定的边界框存在自遮挡现象的示意图;Figure 1 is a schematic diagram of the self-occlusion phenomenon of the determined bounding box;
图2为激光雷达对原始点云的基本处理过程的一种流程图;Figure 2 is a flow chart of the basic processing procedure of the original point cloud by the lidar;
图3A~图3C为三种点云包络的示意图;Figures 3A to 3C are schematic diagrams of three kinds of point cloud envelopes;
图4为本申请实施例的一种应用场景示意图;FIG. 4 is a schematic diagram of an application scenario of an embodiment of the application;
图5为本申请实施例提供的一种确定点云的边界框的方法的流程图;FIG. 5 is a flowchart of a method for determining the bounding box of a point cloud according to an embodiment of the application;
图6A和图6B为本申请实施例中划分区域的两种示意图;6A and 6B are two schematic diagrams of dividing areas in an embodiment of this application;
图6C为本申请实施例中确定辅助线的一种示意图;FIG. 6C is a schematic diagram of determining auxiliary lines in an embodiment of this application;
图7为本申请实施例中的目标对象的示意图;FIG. 7 is a schematic diagram of a target object in an embodiment of the application;
图8A为本申请实施例中根据目标对象得到的凸多边形的一种示意图;FIG. 8A is a schematic diagram of a convex polygon obtained according to a target object in an embodiment of the application; FIG.
图8B为本申请实施例中区域的子损失值的一种示意图;FIG. 8B is a schematic diagram of the sub-loss value of the area in an embodiment of the application;
图9A为本申请实施例中根据目标对象得到的凸多边形的另一种示意图;FIG. 9A is another schematic diagram of a convex polygon obtained according to a target object in an embodiment of the application; FIG.
图9B为本申请实施例中区域的子损失值的另一种示意图;FIG. 9B is another schematic diagram of the sub-loss value of the area in the embodiment of the application; FIG.
图10为本申请实施例提供的处理装置的一种结构示意图;FIG. 10 is a schematic structural diagram of a processing device provided by an embodiment of this application;
图11为本申请实施例提供的处理装置的一种结构示意图;FIG. 11 is a schematic structural diagram of a processing device provided by an embodiment of this application;
图12为本申请实施例提供的处理装置的一种结构示意图;FIG. 12 is a schematic structural diagram of a processing device provided by an embodiment of this application;
图13为本申请实施例提供的处理装置的一种结构示意图。FIG. 13 is a schematic structural diagram of a processing device provided by an embodiment of this application.
具体实施方式Detailed ways
为了使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例作进一步地详细描述。In order to make the objectives, technical solutions, and advantages of the embodiments of the present application clearer, the embodiments of the present application will be further described in detail below with reference to the accompanying drawings.
以下,对本申请实施例中的部分用语进行解释说明,以便于本领域技术人员理解。Hereinafter, some terms in the embodiments of the present application will be explained to facilitate the understanding of those skilled in the art.
1)处理装置,或者也可以称为探测装置,例如为传感器,该传感器例如为雷达,例如激光雷达(light detection and ranging,lidar),或其他类型的雷达。或者,该传感器也可以是设置在雷达上的,用于采集目标对象的点云的传感器。1) The processing device, or may also be called a detection device, such as a sensor, and the sensor is, for example, a radar, such as a light detection and ranging (lidar), or other types of radar. Alternatively, the sensor may also be a sensor installed on the radar and used to collect the point cloud of the target object.
2)自由空间,是指非物体所占据的空间。同理,侵占自由空间是指,空间中不存在物体的点云,但该空间却被认为属于某个物体。2) Free space refers to the space occupied by non-objects. In the same way, invading free space means that there is no point cloud of an object in the space, but the space is considered to belong to an object.
3)自遮挡,是指传感器在观测物体的过程中,物体自身的某部分遮挡了该物体的另一部分,造成该物体被遮挡的部分不可见、或者被遮挡的部分观测结果不准确的现象。3) Self-occlusion refers to a phenomenon in which a certain part of the object occludes another part of the object when the sensor is observing an object, causing the occluded part of the object to be invisible or the observation result of the occluded part is inaccurate.
4)本申请实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。4) In the embodiments of the present application, "at least one" refers to one or more, and "multiple" refers to two or more. "And/or" describes the association relationship of the associated objects, indicating that there can be three relationships, for example, A and/or B, which can mean: A alone exists, A and B exist at the same time, and B exists alone, where A, B can be singular or plural. The character "/" generally indicates that the associated objects before and after are in an "or" relationship. "The following at least one item (a)" or similar expressions refers to any combination of these items, including any combination of a single item (a) or a plurality of items (a). For example, at least one item (a) of a, b, or c can mean: a, b, c, ab, ac, bc, or abc, where a, b, and c can be single or multiple .
以及,除非有相反的说明,本申请实施例提及“第一”、“第二”等序数词是用于对多个对象进行区分,不用于限定多个对象的大小、形状、内容、顺序、时序、优先级或者重要程度等。例如,第一边界框和第二边界框,只是为了区分不同的边界框,而并不是表示这两个边界框的大小、形状、优先级或者重要程度等的不同。And, unless otherwise stated, the ordinal numbers such as "first" and "second" mentioned in the embodiments of this application are used to distinguish multiple objects, and are not used to limit the size, shape, content, and order of multiple objects. , Timing, priority or importance, etc. For example, the first bounding box and the second bounding box are only used to distinguish different bounding boxes, but do not indicate the difference in size, shape, priority, or importance of the two bounding boxes.
前文介绍了本申请实施例所涉及到的一些名词概念,下面介绍本申请实施例涉及的技术特征。The foregoing introduces some terms and concepts involved in the embodiments of the present application, and the technical features involved in the embodiments of the present application are introduced below.
在自动驾驶系统/辅助驾驶系统中,需要解决感知、决策和执行等层面的问题。所谓的感知,是指感知周围的环境,例如感知周围环境中的对象,并对所感知的对象进行识别和分析。感知在自动驾驶系统/辅助驾驶系统中扮演着极其重要的角色,激光雷达作为自动驾驶中最主要的感知传感器之一,其从原始点云到目标感知的基本过程可参考图2。图2中,原始点云是激光雷达对目标对象进行测量获得的。在获得原始点云后,激光雷达可以对原始点云进行去地处理,也就是去除原始点云中对应于地面的点,相当于消除地面的干扰。之后激光雷达对去地处理后的点云进行聚类处理。在获得的点云中可能包括了多个对象,例如,在激光雷达所采集的点云中,包括了行人、车辆、以及房屋等对象。则激光雷达可以通过聚类处理,将各个对象所对应的点聚集到一起,相当于,聚类得到的多个类别的点,就可以分别表示不同的对象。在进行聚类处理后,激光雷达可以得到聚类后得到的每个对象对应的点云包络,或者,聚类后可能得到了多个对象,而这多个对象中可能只有一部分对象是激光雷达想要得到的对象,则激光雷达也可以只得到这些对象的点云包络。在得到对象的点云包络后,激光雷达就可以根据点云包络确定对象的边界框,之后就可以根据边 界框,对相应的对象进行跟踪或识别等操作。In the autonomous driving system/assisted driving system, it is necessary to solve the problems of perception, decision-making and execution. The so-called perception refers to perceiving the surrounding environment, such as perceiving objects in the surrounding environment, and recognizing and analyzing the perceived objects. Perception plays an extremely important role in the automatic driving system/assisted driving system. Lidar is one of the most important sensing sensors in automatic driving. The basic process from the original point cloud to the target perception can be referred to Figure 2. In Figure 2, the original point cloud is obtained by measuring the target object by lidar. After obtaining the original point cloud, the lidar can de-ground the original point cloud, that is, remove the points corresponding to the ground in the original point cloud, which is equivalent to eliminating ground interference. After that, the lidar performs clustering processing on the point cloud after ground removal. The obtained point cloud may include multiple objects. For example, the point cloud collected by the lidar includes objects such as pedestrians, vehicles, and houses. Then the lidar can cluster the points corresponding to each object together, which is equivalent to multiple categories of points obtained by clustering, which can respectively represent different objects. After the clustering process, the lidar can obtain the point cloud envelope corresponding to each object obtained after the clustering, or, after the clustering, multiple objects may be obtained, and only some of the objects may be lasers. For the objects that the radar wants to obtain, the lidar can also only obtain the point cloud envelope of these objects. After obtaining the point cloud envelope of the object, the lidar can determine the bounding box of the object based on the point cloud envelope, and then can track or recognize the corresponding object based on the bounding box.
其中,点云包络是对点云边缘的一种有效地简化表示,可以为后续的目标跟踪等操作提供极大的帮助。一般情况下,点云包络的主要形式有凸多边形(也可以称为凸多边形包络)、椭圆(也可以称为椭圆包络)以及边界框(bounding box,又称包围盒,也可以称为边界框包络)这三种形式。可以理解为,点云包络可包括凸多边形包络、椭圆包络和边界框包络等几种包络。其中,边界框包络又可以理解为是凸多边形包络的一种,例如,当凸多边形包络的形状为矩形时,该凸多边形包络也可以认为是边界框包络。而如果凸多边形包络的形状不是矩形,则该凸多边形包络不是边界框包络。如果是这种情况,还可以进一步根据凸多边形包络得到边界框包络。在下文中,为了简便,也将边界框包络简称为边界框,以及,将凸多边形包络简称为凸多边形。Among them, the point cloud envelope is an effective simplified representation of the edge of the point cloud, which can provide great help for subsequent target tracking and other operations. In general, the main forms of point cloud envelopes are convex polygons (also known as convex polygonal envelopes), ellipses (also known as elliptical envelopes), and bounding boxes (also known as bounding boxes, also known as bounding boxes). Envelope for the bounding box) these three forms. It can be understood that the point cloud envelope may include several envelopes such as convex polygon envelope, ellipse envelope and bounding box envelope. Among them, the bounding box envelope can be understood as a type of convex polygonal envelope. For example, when the shape of the convex polygonal envelope is a rectangle, the convex polygonal envelope can also be regarded as a bounding box envelope. If the shape of the convex polygonal envelope is not a rectangle, the convex polygonal envelope is not a bounding box envelope. If this is the case, the bounding box envelope can be further obtained based on the convex polygon envelope. In the following, for simplicity, the bounding box envelope is also referred to as a bounding box, and the convex polygonal envelope is also referred to as a convex polygon.
边界框可以理解为,是围绕正在检测的对象的虚构的外框。在数字图像处理中,边界框可以是将数字图像放在页面、画布、屏幕或其他类似的二维背景上时完全包围该数字图像的矩形边框的坐标。可简单理解为,边界框是用体积稍大且特性简单的几何体来近似地表征复杂的几何对象。The bounding box can be understood as an imaginary outer frame surrounding the object being detected. In digital image processing, the bounding box may be the coordinates of a rectangular frame that completely encloses the digital image when the digital image is placed on a page, canvas, screen, or other similar two-dimensional background. It can be simply understood that the bounding box is a geometric body with a slightly larger volume and simple characteristics to approximate a complex geometric object.
可参考图3A~图3C,图3A为凸多边形包络的示意图,图3B为椭圆包络的示意图,图3C为边界框包络的示意图。图3A~图3C中,均以对象是车辆为例。另外可参考表1,为这三种形式的包络的各自的优缺点。Refer to FIGS. 3A to 3C. FIG. 3A is a schematic diagram of a convex polygonal envelope, FIG. 3B is a schematic diagram of an elliptical envelope, and FIG. 3C is a schematic diagram of a bounding box envelope. In FIGS. 3A to 3C, the object is a vehicle as an example. In addition, you can refer to Table 1 for the advantages and disadvantages of the three types of envelopes.
表1Table 1
 To 凸多边形Convex polygon 椭圆oval 边界框Bounding box
优点advantage 灵活、准确Flexible and accurate 稳定、简单Stable and simple 稳定、简单Stable and simple
不足insufficient 方法复杂,外形稳定性差Complex method, poor shape stability 准确性差Poor accuracy 准确性适中Moderate accuracy
由于边界框结构稳定,参数简单,且对于绝大多数道路交通参与目标表示的准确性较好,因此,边界框成为当前表示点云包络的主流方案。也就是说,在得到点云包络后,可以根据点云包络再得到对象的边界框。可以看到,点云包络的其中一种形式就是边界框包络,这种形式就相当于得到点云包络就是得到了边界框。而如果点云包络是凸多边形包络或椭圆包络,则在得到点云包络后,可以进一步根据点云包络得到对象的边界框。Because the bounding box structure is stable, the parameters are simple, and the accuracy of the representation of most road traffic participation targets is good, the bounding box has become the mainstream solution for representing the point cloud envelope. In other words, after the point cloud envelope is obtained, the bounding box of the object can be obtained according to the point cloud envelope. It can be seen that one form of the point cloud envelope is the bounding box envelope. This form is equivalent to obtaining the point cloud envelope to obtain the bounding box. If the point cloud envelope is a convex polygon envelope or an ellipse envelope, after the point cloud envelope is obtained, the bounding box of the object can be further obtained according to the point cloud envelope.
例如,边界框可以通过两种方式获取:方式一,直接从点云获取(即,获得的点云包络是边界框包络);方式二,利用点云的二维的凸多边形包络,获取最终的边界框。For example, the bounding box can be obtained in two ways: Method one, obtain directly from the point cloud (that is, the obtained point cloud envelope is the bounding box envelope); Method two, use the two-dimensional convex polygon envelope of the point cloud, Get the final bounding box.
如果直接从点云获取边界框,一般需要遍历点云中所有的点,通过某种与点相关的损失函数(例如面积损失函数或距离损失函数等),确定最终的边界框。因此这种方法计算复杂度较高,算法耗时较长。If you obtain the bounding box directly from the point cloud, you generally need to traverse all the points in the point cloud, and determine the final bounding box through some point-related loss function (such as area loss function or distance loss function, etc.). Therefore, this method has high computational complexity and the algorithm takes a long time.
而通过凸多边形包络获取边界框的方式,一般而言计算量较少,实时性较好。但由于仅能利用凸多边形的几何结构,导致边界框的朝向稳定性较差。例如,如果根据凸多边形包络确定边界框,则根据一个凸多边形包络可能会确定出多个边界框,需要从中选择一个边界框作为最终的边界框。但目前在选择边界框时,并没有合理的选择标准,所选择的边界框很可能是不合理的。However, the method of obtaining the bounding box through the convex polygon envelope generally requires less calculation and better real-time performance. However, since only the geometric structure of convex polygons can be used, the orientation stability of the bounding box is poor. For example, if the bounding box is determined based on the convex polygon envelope, multiple bounding boxes may be determined based on one convex polygon envelope, and one bounding box needs to be selected as the final bounding box. However, at present, there is no reasonable selection criterion when selecting the bounding box, and the selected bounding box is likely to be unreasonable.
例如请参考图1,其中的实线矩形框和虚线矩形框为目标对象的两个边界框,这两个边界框例如是根据点云的凸多边形包络得到的。矩形框中的黑色圆点表示对象的点云。在确定这两个边界框后,激光雷达可以从这两个边界框中选择一个作为对象的边界框。例如 图1中,激光雷达最终选择的边界框是实线矩形框所示的边界框。但是采集点云的传感器位于实线矩形框所在的一侧,而实线矩形框中有一部分区域挡在了点云和传感器中间,导致点云被遮挡,这就是所谓的自遮挡现象,这会导致激光雷达对目标对象的观测结果不够合理,从而也会影响后续对目标对象的追踪或识别等处理过程的准确性。For example, please refer to FIG. 1, where the solid rectangular box and the dotted rectangular box are two bounding boxes of the target object, and the two bounding boxes are obtained based on the convex polygon envelope of the point cloud, for example. The black dot in the rectangle represents the point cloud of the object. After determining the two bounding boxes, the lidar can select one of the two bounding boxes as the bounding box of the object. For example, in Figure 1, the bounding box finally selected by the lidar is the bounding box shown by the solid rectangular box. However, the sensor that collects the point cloud is located on the side of the solid rectangular frame, and a part of the solid rectangular frame is blocked between the point cloud and the sensor, causing the point cloud to be occluded. This is the so-called self-occlusion phenomenon. As a result, the observation result of the lidar on the target object is not reasonable enough, which will also affect the accuracy of the subsequent processing of tracking or identifying the target object.
鉴于此,提供本申请实施例的技术方案。在本申请实施例中,第一位置信息例如可以表示处理装置与点云之间的相对位置,从而可以根据处理装置与点云之间的相对位置,将点云中的第一图形所在的第一平面划分为N个区域,对每个区域分别计算子损失值,这样就相当于在计算子损失值时考虑了处理装置与对象之间的相对位置。通过这种方式所确定的边界框,可以尽量减小自遮挡的现象对观测结果的影响,可以提高后续对目标对象的追踪或识别等处理过程的准确性,进而提高对目标对象的观测结果的准确性。而且本申请实施例在计算损失值时,计算的是边界框侵占的相应区域的自由空间的度量,有助于减少边界框所侵占的自由空间,这也就使得所确定的边界框更为准确。In view of this, the technical solutions of the embodiments of the present application are provided. In the embodiment of the present application, the first position information may, for example, indicate the relative position between the processing device and the point cloud, so that according to the relative position between the processing device and the point cloud, the first graphic in the point cloud is located. A plane is divided into N areas, and the sub-loss value is calculated for each area, which is equivalent to considering the relative position between the processing device and the object when calculating the sub-loss value. The bounding box determined in this way can minimize the influence of self-occlusion on the observation results, and can improve the accuracy of subsequent processing procedures such as tracking or recognizing the target object, thereby improving the accuracy of the observation result of the target object. accuracy. In addition, when calculating the loss value, the embodiment of the application calculates the free space measurement of the corresponding area occupied by the bounding box, which helps to reduce the free space occupied by the bounding box, which makes the determined bounding box more accurate. .
请参考图4,为本申请实施例的一种应用场景示意图。图4中有两个车辆行驶在一条道路上,例如车辆A上设置有雷达。该雷达可以对周围环境进行测量,以获得周围环境中对象的点云,且可以对获得的点云进行去地处理、聚类处理、以及点云包络等处理,从而后续可以根据获得的边界框对相应的对象进行追踪或识别等操作。例如该雷达可以获得车辆B的点云,并可以对车辆B的点云进行去地处理、聚类处理、以及点云包络等处理,从而可以根据获得的车辆B的边界框对车辆B进行追踪或识别等操作。图4中,雷达在车辆A上的位置只是示例,雷达在车辆上的具体位置不限于此。Please refer to FIG. 4, which is a schematic diagram of an application scenario of an embodiment of this application. In Figure 4, there are two vehicles running on the same road. For example, a radar is installed on vehicle A. The radar can measure the surrounding environment to obtain the point cloud of objects in the surrounding environment, and can perform ground processing, clustering processing, and point cloud envelope processing on the obtained point cloud, so that the subsequent can be based on the obtained boundary The frame performs operations such as tracking or recognizing the corresponding object. For example, the radar can obtain the point cloud of vehicle B, and can perform ground processing, clustering, and point cloud envelope processing on the point cloud of vehicle B, so that vehicle B can be processed according to the obtained bounding box of vehicle B Operations such as tracking or identification. In FIG. 4, the position of the radar on the vehicle A is only an example, and the specific position of the radar on the vehicle is not limited to this.
当然图4只是一种示例,本申请实施例的应用场景不限于此。例如本申请实施例所提供的处理装置也可能不是雷达而是其他的设备,且处理装置也可能不设置在车辆上,而是设置在其他设备上,例如智能机器人或无人机,或者处理装置也可以单独设置。Of course, FIG. 4 is only an example, and the application scenario of the embodiment of the present application is not limited to this. For example, the processing device provided by the embodiment of the present application may not be a radar but other equipment, and the processing device may not be installed on the vehicle, but on other equipment, such as a smart robot or a drone, or a processing device It can also be set individually.
本申请实施例提供一种确定点云的边界框的方法,请参见图5,为该方法的流程图。在下文的介绍过程中,以该方法应用于图4所示的网络架构为例。The embodiment of the present application provides a method for determining the bounding box of a point cloud. Please refer to FIG. 5, which is a flowchart of the method. In the following introduction process, the application of this method to the network architecture shown in FIG. 4 is taken as an example.
为了便于介绍,在下文中,以该方法由处理装置执行为例。因为本实施例是以应用在图4所示的场景为例,因此,下文中所述的处理装置可以是图4所示的场景中的雷达,或者是设置在图4所示的场景中的雷达中的传感器等。For ease of introduction, in the following, the execution of the method by the processing device is taken as an example. Because this embodiment is applied to the scene shown in FIG. 4 as an example, the processing device described below may be a radar in the scene shown in FIG. 4, or a radar set in the scene shown in FIG. 4 Sensors in radar, etc.
S51、根据第一位置信息将第一图形所在的第一平面划分为N个区域,N为大于或等于2的整数。S51. Divide the first plane where the first graphic is located into N areas according to the first position information, where N is an integer greater than or equal to 2.
处理装置为用于采集该点云的装置,图5所示的实施例可以由处理装置来执行。例如处理装置对目标对象进行测量,可以得到多个点,这些点可以视为构成点数据集合(或者,称为点的集合),该点数据集合就可以对应该目标对象,该点数据集合也就是该目标对象的点云。The processing device is a device for collecting the point cloud, and the embodiment shown in FIG. 5 may be executed by the processing device. For example, when the processing device measures the target object, multiple points can be obtained. These points can be regarded as constituting a point data set (or called a point set). The point data set can correspond to the target object, and the point data set is also It is the point cloud of the target object.
在得到目标对象的点云后,可以将该点云投影到第一平面,投影后可以得到一个二维图形,该图形例如称为第一图形。第一平面例如是根据处理装置和目标对象所确定的平面,例如目标物体位于地面,则第一平面可以是水平面,例如水平面也可以称为XY平面。或者,第一平面也可以是任意角度的平面,例如目标物体并没有位于地面,可能漂浮在空中,或者目标物体是车辆,但车辆在斜坡上行驶等,则第一平面就可以是任意角度的平面。较为合理的一种方式,第一平面可以是除了第二平面之外的任意角度的平面。例如,将处理装置和目标对象投影到一个平面,该平面可以认为是第二平面。After the point cloud of the target object is obtained, the point cloud can be projected to the first plane, and a two-dimensional graph can be obtained after the projection, which is called the first graph, for example. The first plane is, for example, a plane determined by the processing device and the target object. For example, if the target object is on the ground, the first plane may be a horizontal plane. For example, the horizontal plane may also be referred to as an XY plane. Alternatively, the first plane can also be a plane at any angle. For example, the target object is not on the ground, it may be floating in the air, or the target object is a vehicle, but the vehicle is driving on a slope, etc., then the first plane can be at any angle flat. In a more reasonable way, the first plane can be a plane with any angle other than the second plane. For example, the processing device and the target object are projected onto a plane, which can be regarded as a second plane.
例如,第一图形可以是凸多边形,或者也可以是椭圆形等。这也可以理解为,是根据点云得到了该点云的凸多边形包络或椭圆形包络。当然第一图形也可以是其他的形状,这与点云投影到第一平面后的形状有关,具体的不做限制。For example, the first figure may be a convex polygon, or it may be an ellipse or the like. This can also be understood as obtaining the convex polygonal envelope or the elliptical envelope of the point cloud based on the point cloud. Of course, the first graphic may also have other shapes, which are related to the shape of the point cloud projected on the first plane, and there is no specific limitation.
第一图形例如包括M条边,M为正整数。其中,如果第一图形为凸多边形,则M条边就是凸多边形的M条边,这M条边可以包括凸多边形的全部的边,或者包括凸多边形的部分的边。例如凸多边形为五边形,则M可以等于5,或者也可以小于5。因为有时只使用凸多边形的部分边就能够得到较为准确的结果,因此M条边就无需包括凸多边形的所有边,这样也有助于减少计算量。或者,如果第一图形为椭圆形,则M条边就是用于拟合得到该椭圆形的所有边或部分边。例如,通过对1132条边进行拟合,可以得到一个椭圆形,则M可以等于1132,或者也可以小于1132。M的取值可以取决于点云,如果点云的形状不同,则M的取值也可能有所不同,因此对于M的具体取值不做限制。The first figure includes, for example, M sides, and M is a positive integer. Wherein, if the first figure is a convex polygon, the M sides are the M sides of the convex polygon, and the M sides may include all sides of the convex polygon or part of the sides of the convex polygon. For example, if the convex polygon is a pentagon, M can be equal to 5 or less than 5. Because sometimes only part of the edges of the convex polygon can be used to obtain a more accurate result, the M edges do not need to include all the edges of the convex polygon, which also helps to reduce the amount of calculation. Or, if the first figure is an ellipse, the M edges are all or part of the edges of the ellipse used to be fitted. For example, by fitting 1132 edges, an ellipse can be obtained, and M can be equal to 1132 or less than 1132. The value of M may depend on the point cloud. If the shape of the point cloud is different, the value of M may also be different, so there is no restriction on the specific value of M.
处理装置可以将第一平面划分为N个区域。其中,在处理装置的感知过程中,点云中与处理装置之间的相对位置不同的区域,或者点云中的密度不同的区域,可能观测准确度不同。所谓的观测准确度,是指点云中的区域内的点数据表征目标对象的准确度。处理装置对点云中的一个区域的观测准确度越高,表明该区域的可信赖程度越高,反之,处理装置对点云中的一个区域的观测准确度越低,表明该区域的可信赖程度越低。例如,点云中与处理装置之间的距离较近的区域,或者,点云中密度较大的区域,一般不存在自遮挡,对于点云的这些区域,点云的位置一般能够表示目标对象的真实外形,也就是说,处理装置对点云的这部分区域的观测准确度较高,使得处理装置得到的点云的这部分区域对应的目标对象的外形较为准确;而对于点云中离处理装置之间的距离较远的区域,或者,点云中密度较小的区域,就可能存在自遮挡的问题(关于自遮挡现象的介绍可参考前文),对于点云的这些区域,点云的位置所表示目标对象的外形与目标对象的真实外形之间可能有偏差,也就是说,处理装置对点云的这部分区域的观测准确性较低。The processing device may divide the first plane into N areas. Among them, during the sensing process of the processing device, areas in the point cloud with different relative positions from the processing device, or areas with different densities in the point cloud may have different observation accuracy. The so-called observation accuracy refers to the accuracy with which the point data in the area in the point cloud characterizes the target object. The higher the accuracy of the processing device's observation of an area in the point cloud, the higher the reliability of the area. On the contrary, the lower the accuracy of the processing device's observation of an area in the point cloud, indicating the reliability of the area The lower the degree. For example, the area in the point cloud that is close to the processing device, or the area with higher density in the point cloud, generally does not have self-occlusion. For these areas of the point cloud, the position of the point cloud can generally indicate the target object In other words, the processing device has a high degree of accuracy in the observation of this part of the point cloud, so that the shape of the target object corresponding to this part of the point cloud obtained by the processing device is more accurate; Areas with a long distance between processing devices, or areas with a low density in the point cloud, may have the problem of self-occlusion (for the introduction of self-occlusion phenomenon, please refer to the previous article). For these areas of the point cloud, the point cloud The position of indicates that there may be a deviation between the shape of the target object and the actual shape of the target object, that is, the observation accuracy of this part of the point cloud by the processing device is low.
鉴于此,本申请实施例提出,可以将第一平面按照观测的可信赖程度,或者说按照观测准确度,划分为N个区域,从而便于对这N个区域分别进行考虑。例如,可信赖程度,或者说观测准确度,可以通过置信度来体现。对于第一平面的一个区域,如果处理装置对该区域进行观测的可信赖程度较高,则该区域的置信度就越高,而如果处理装置对该区域进行观测的可信赖程度较低,则该区域的置信度就越低。因此,一个区域的置信度可以指示该区域内的点数据表征目标对象的准确度。例如,置信度较高的区域也可以称为观测准确区,置信度较低的区域也可以称为观测模糊区。In view of this, the embodiment of the present application proposes that the first plane can be divided into N regions according to the reliability of the observation, or according to the accuracy of the observation, so that the N regions can be considered separately. For example, the degree of trustworthiness, or the accuracy of observation, can be reflected by the degree of confidence. For an area of the first plane, if the processing device has a higher degree of confidence in observing the area, the confidence of the area is higher, and if the processing device has a lower degree of reliability in observing the area, then The lower the confidence in this area. Therefore, the confidence level of an area can indicate the accuracy of the point data in the area to characterize the target object. For example, an area with a higher degree of confidence can also be referred to as an accurate observation area, and an area with a lower degree of confidence can also be referred to as a fuzzy observation area.
根据前文的介绍可知,处理装置对点云进行观测的可信赖程度,与处理装置的位置和点云的位置有关,或者与点云的密度有关,因此,区域对应的置信度,也与处理装置的位置和点云的位置有关,或者与点云的密度有关。而一般来说,点云的密度也与处理装置的位置和点云的位置有关。例如,点云中与处理装置之间的距离较近的区域,可能密度较大,而点云中与处理装置之间的距离较远的区域,可能密度较小。因此,要表征第一平面的各个区域的观测准确度,或者说确定第一平面的各个区域的置信度,可以借助于第一位置信息,第一位置信息可以是根据处理装置的位置和点云的位置确定的,例如第一位置信息可以反映处理装置和点云之间的相对位置。例如,第一平面中与处理装置之间的距离较近的区域,对应的置信度可以较高,而第一平面中与处理装置之间的距离较远的区域,对应的置信度可以较低。因此,处理装置可以根据第一位置信息,确定至少一条辅助线,从而通 过至少一条辅助线,就可以将第一平面划分为N个区域。这N个区域对应于N个置信度,其中,区域和置信度可以是一一对应的。在N个区域对应的N个置信度中,可能有部分置信度相同,或者,N个置信度均不相同。另外,对于N的取值不做限制。例如N的取值可以较大,这样使得划分粒度较低,能够得到更为准确的结果;或者,N的取值也可以较小,这样有助于减小计算量。According to the above introduction, the reliability of the observation of the point cloud by the processing device is related to the position of the processing device and the position of the point cloud, or the density of the point cloud. Therefore, the confidence level corresponding to the area is also related to the processing device. The position of is related to the position of the point cloud, or is related to the density of the point cloud. Generally speaking, the density of the point cloud is also related to the location of the processing device and the location of the point cloud. For example, an area in the point cloud that is closer to the processing device may have a higher density, while an area in the point cloud that is farther away from the processing device may have a lower density. Therefore, to characterize the observation accuracy of each area of the first plane, or to determine the confidence of each area of the first plane, the first position information can be used. The first position information can be based on the position of the processing device and the point cloud. For example, the first position information may reflect the relative position between the processing device and the point cloud. For example, an area in the first plane that is closer to the processing device may have a higher confidence level, while an area in the first plane that is farther away from the processing device may have a lower confidence level. . Therefore, the processing device can determine at least one auxiliary line according to the first position information, so that the first plane can be divided into N areas through the at least one auxiliary line. These N regions correspond to N confidence levels, where the regions and the confidence levels may have a one-to-one correspondence. Among the N confidences corresponding to the N regions, some of the confidences may be the same, or all of the N confidences are different. In addition, there is no restriction on the value of N. For example, the value of N can be larger, so that the granularity of the division is lower, and more accurate results can be obtained; or the value of N can also be smaller, which helps reduce the amount of calculation.
其中,所划分的N个区域中,可能每个区域都包括点云中的点数据,或者,也可能有些区域不包括点云中的点数据。或者说,所述的N个区域,可能每个区域都与第一图形有交集,或者也可能有些区域与第一图形没有交集。而置信度可以与点云的密度有关,那么可以理解的,所述的N个区域可以对应N个置信度,而所包括的点数据越少的区域,对应的置信度可能越小,所包括的点数据越多的区域,对应的置信度就可能越大。Among the divided N areas, each area may include point data in the point cloud, or some areas may not include point data in the point cloud. In other words, each of the N regions may have an intersection with the first graphic, or some regions may not have an intersection with the first graphic. The confidence level can be related to the density of the point cloud. It can be understood that the N regions can correspond to N confidence degrees, and the less point data included in the region, the lower the corresponding confidence level may be. The more point data of the region, the greater the confidence level may be.
在本申请实施例中,对于辅助线的个数不做限制,只要通过至少一条辅助线能将第一平面划分为N个区域即可。另外,辅助线的本质是不同的置信度的分界线(或者说是对应于不同的置信度的区域的分界线),因此对于辅助线的形状也不做限制。例如辅助线在二维空间中可以是任意的曲线或折线,且如果辅助线有多条,则不同的辅助线的形状可以相同,例如都是曲线或都是直线,或者也可以不同,例如有的辅助线是曲线,还有的辅助线是直线。In the embodiment of the present application, there is no limitation on the number of auxiliary lines, as long as the first plane can be divided into N regions by at least one auxiliary line. In addition, the essence of the auxiliary line is the dividing line of different confidence levels (or the dividing line of the regions corresponding to different confidence levels), so there is no restriction on the shape of the auxiliary line. For example, the auxiliary line can be any curve or polyline in the two-dimensional space, and if there are multiple auxiliary lines, the shapes of the different auxiliary lines can be the same, for example, all are curves or all straight lines, or they can be different, for example, The auxiliary line of is a curve, and the auxiliary line is a straight line.
例如可参考图6A,图6A以第一图形是凸多边形且N=2为例,即,将第一平面划分为2个区域。那么,可以通过图6A中的曲线1这条辅助线将第一平面划分为2个区域,或者,也可以通过图6A中的直线2这条辅助线将第一平面划分为2个区域。对于这2个区域来说,与处理装置之间的距离是不同的,区域1与处理装置之间的距离较近,而区域2与处理装置之间的距离较远,则区域1对应的置信度较高,区域2对应的置信度较低。区域1可以称为观测准确区,区域2可以称为观测模糊区。For example, refer to FIG. 6A. In FIG. 6A, the first figure is a convex polygon and N=2 as an example, that is, the first plane is divided into two regions. Then, the first plane can be divided into 2 regions by the auxiliary line of curve 1 in FIG. 6A, or the first plane can be divided into 2 regions by the auxiliary line of straight line 2 in FIG. 6A. For these two areas, the distance to the processing device is different. The distance between the area 1 and the processing device is shorter, and the distance between the area 2 and the processing device is longer, and the corresponding confidence of the area 1 is The degree of confidence is higher, and the confidence degree corresponding to region 2 is lower. Area 1 can be referred to as the accurate observation area, and area 2 can be referred to as the observing fuzzy area.
又例如,可参考图6B,图6B也以第一图形是凸多边形且N=2为例,即,将第一平面划分为2个区域。那么,可以通过图6B中的曲线1这条辅助线将第一平面划分为2个区域,或者,也可以通过图6B中的直线2这条辅助线将第一平面划分为2个区域。对于这2个区域来说,与处理装置之间的距离是不同的,区域1与处理装置之间的距离较近,而区域2与处理装置之间的距离较远,则区域1对应的置信度较高,区域2对应的置信度较低。区域1可以称为观测准确区,区域2可以称为观测模糊区。根据图6A和图6B可见,因为划分区域是与处理装置和点云之间的相对位置有关,因此,当处理装置的位置不同时,对区域的划分结果也会有所不同。For another example, refer to FIG. 6B. FIG. 6B also takes the first figure as a convex polygon and N=2 as an example, that is, the first plane is divided into two regions. Then, the first plane can be divided into 2 regions by the auxiliary line of curve 1 in FIG. 6B, or the first plane can be divided into 2 regions by the auxiliary line of straight line 2 in FIG. 6B. For these two areas, the distance to the processing device is different. The distance between the area 1 and the processing device is shorter, and the distance between the area 2 and the processing device is longer, and the corresponding confidence of the area 1 is The degree of confidence is higher, and the confidence degree corresponding to region 2 is lower. Area 1 can be referred to as the accurate observation area, and area 2 can be referred to as the observing fuzzy area. It can be seen from FIG. 6A and FIG. 6B that because the divided area is related to the relative position between the processing device and the point cloud, when the position of the processing device is different, the division result of the area will also be different.
图6A和图6B,都是以N个区域均包括点数据为例的。或者也有可能,N个区域中有的区域不包括点数据。例如图6A中,可能区域1包括点数据,而区域2不包括点数据;或者图6B中,可能区域1包括点数据,而区域2不包括点数据。Fig. 6A and Fig. 6B both take the example of N areas including point data. Or it is also possible that some of the N areas do not include point data. For example, in FIG. 6A, it is possible that area 1 includes point data and area 2 does not include point data; or in FIG. 6B, it is possible that area 1 includes point data, but area 2 does not include point data.
处理装置根据第一位置信息确定至少一条辅助线,较为优选的,辅助线的数量可以为1条,当然也可以为多条。根据第一位置信息确定辅助线的方式可以有多种。在此,以第一图形是凸多边形、N=2、辅助线的个数为1、且辅助线是直线为例,介绍一种确定辅助线的方式:1)处理装置确定对目标对象进行扫描时确定最左端的扫描线与最右端的扫描线,如图6A或图6B中的两条虚线所示;2)处理装置选择这两条扫描线与凸多边形(即第一图形)的两个交点为两个扫描端点,如图6A或图6B中的A和B所示的两个点;3)处理装置将经过这两个端点的直线2确定为辅助线。The processing device determines at least one auxiliary line according to the first position information. Preferably, the number of auxiliary lines may be one, or of course there may be multiple auxiliary lines. There may be multiple ways to determine the auxiliary line according to the first position information. Here, taking the first figure as a convex polygon, N=2, the number of auxiliary lines is 1, and the auxiliary line is a straight line as an example, a way to determine the auxiliary line is introduced: 1) The processing device determines to scan the target object When determining the leftmost scan line and the rightmost scan line, as shown by the two dashed lines in FIG. 6A or FIG. 6B; 2) the processing device selects the two scan lines and the two convex polygons (that is, the first pattern) The intersection points are two scanning endpoints, such as the two points shown in A and B in FIG. 6A or FIG. 6B; 3) the processing device determines the straight line 2 passing through these two endpoints as an auxiliary line.
在前文介绍了,辅助线可以是直线,或者也可以是曲线等。下面再以第一图形是凸多边形、N=2、辅助线的个数为1、且辅助线是曲线为例,介绍一种确定辅助线的方式:1)处理装置确定对目标对象进行扫描时最左端的扫描线与最右端的扫描线,如图6A或图6B中的两条虚线所示。2)处理装置将∠AOB分成多份。可参考图6C,其中,最左端的扫描线和最右端的扫描线构成一个角度,例如将最左端的扫描线和最右端的扫描线所形成的角度称为∠AOB。例如,处理装置可以从∠AOB的点O处引出多条射线,将∠AOB覆盖的区域分成多个扇形部分。例如其中的一个部分为∠AOC覆盖的区域,其中的另一个部分为∠COD覆盖的区域,其中,C和D代表两条射线,以此类推。例如处理装置在扫描时,扫描线是逐渐移动的,可能每次移动一定的度数(例如每次移动0.2°),处理装置可以按照扫描线来将∠AOB覆盖的区域划分为多个部分,例如每个部分对应的角度为0.2°。3)对于将∠AOB划分得到的每一个部分,都可以找到临界点,将这多个部分对应的多个临界点连接起来,就可以得到一条曲线,这条曲线就可以作为一条辅助线。在将多个临界点连接起来后,还可以对连接后的线条进行平滑处理,以得到最终的辅助线。例如最终的辅助线为图6C中的曲线1。As mentioned above, the auxiliary line can be a straight line or a curve. Taking the first figure as a convex polygon, N=2, the number of auxiliary lines being 1, and the auxiliary line being a curve as an example, we will introduce a way to determine the auxiliary line: 1) When the processing device determines to scan the target object The scan line at the far left and the scan line at the far right are shown by the two dashed lines in FIG. 6A or FIG. 6B. 2) The processing device divides ∠AOB into multiple parts. Refer to FIG. 6C, where the leftmost scan line and the rightmost scan line form an angle. For example, the angle formed by the leftmost scan line and the rightmost scan line is called ∠AOB. For example, the processing device can draw multiple rays from point O of ∠AOB, and divide the area covered by ∠AOB into multiple fan-shaped parts. For example, one part is the area covered by ∠AOC, and the other part is the area covered by ∠COD, where C and D represent two rays, and so on. For example, when the processing device scans, the scan line moves gradually, and may move a certain degree each time (for example, 0.2° each time). The processing device can divide the area covered by ∠AOB into multiple parts according to the scan line, for example The angle corresponding to each part is 0.2°. 3) For each part obtained by dividing ∠AOB, a critical point can be found. Connecting multiple critical points corresponding to these multiple parts can get a curve, which can be used as an auxiliary line. After connecting multiple critical points, you can also smooth the connected lines to obtain the final auxiliary line. For example, the final auxiliary line is curve 1 in FIG. 6C.
以将∠AOB划分得到的一个部分为例,介绍一种获得临界点的方式。例如对于∠AOC覆盖的区域来说,与第一图形可以有交集。在该交集中包括一个或多个点数据。例如该交集包括的点数据的总数为F,例如可以从该交集的任一个方向(例如由靠近处理装置到远离处理装置的方向)开始对点数据进行计数,直到到达该交集的某个位置时,已计数的点数据的数量为Q,或者,已计数的点数据的数量与F的比值为第一比值,那么就可以将该位置确定为临界点所在的位置。其中,Q的取值或第一比值,可以通过协议规定,或者可以由处理装置确定,或者也可以预配置在处理装置中。Take a part obtained by dividing ∠AOB as an example to introduce a way to obtain critical points. For example, for the area covered by ∠AOC, there may be an intersection with the first graph. Include one or more point data in the intersection. For example, the total number of point data included in the intersection is F. For example, the point data can be counted from any direction of the intersection (for example, from a direction close to the processing device to a direction away from the processing device) until reaching a certain position of the intersection. , The number of counted point data is Q, or the ratio of the number of counted point data to F is the first ratio, then the position can be determined as the position of the critical point. Wherein, the value of Q or the first ratio may be specified by an agreement, or may be determined by the processing device, or may also be pre-configured in the processing device.
如上都是以辅助线的个数是1为例。或者,如果辅助线的个数大于1,则处理装置也可以通过其他的方式确定辅助线,对于确定辅助线的方式不做限制。In the above, the number of auxiliary lines is 1 as an example. Or, if the number of auxiliary lines is greater than 1, the processing device may also determine the auxiliary lines in other ways, and there is no restriction on the way of determining the auxiliary lines.
可以看出,在考虑了处理装置与点云之间的相对位置关系的前提下,处理装置与点云之间的不同的相对位置关系可能会导致得到的辅助线不同。这样就将处理装置的整个观测过程纳入了考虑范围。It can be seen that, under the premise of considering the relative positional relationship between the processing device and the point cloud, the different relative positional relationship between the processing device and the point cloud may cause different auxiliary lines to be obtained. In this way, the entire observation process of the processing device is taken into consideration.
S52、以M条边中的每条边作为参考边,确定一个边界框,共得到M个边界框。S52: Using each of the M edges as a reference edge, determine a bounding box to obtain a total of M bounding boxes.
第一图形对应M条边,用一条边作为参考边,可以得到一个边界框,那么根据M条边,就可以得到M个边界框。在本申请实施例中,以边界框的形状是矩形为例。例如对于M条边中的一条边来说,要确定这条边对应的边界框,可以将这条边作为边界框的一条边,以及所确定的边界框需要将第一图形包括在内,且使得该边界框中除了第一图形之外的区域的面积尽可能小,根据这种原则,就可以确定这条边所唯一对应的边界框。The first graph corresponds to M edges, and one edge is used as a reference edge to get a bounding box. Then, based on M edges, M bounding boxes can be obtained. In the embodiment of the present application, the shape of the bounding box is a rectangle as an example. For example, for one of the M edges, to determine the bounding box corresponding to this edge, you can use this edge as an edge of the bounding box, and the determined bounding box needs to include the first graphic, and Make the area of the bounding box except the first graphic as small as possible. According to this principle, the bounding box uniquely corresponding to this side can be determined.
可参考图7,为目标对象的示意图,目标对象例如为车辆。处理装置例如对该目标对象的车头部分进行测量(图7中的凸多边形表示对车头部分进行测量),得到车头部分对应的点云。处理装置将该点云投影到第一平面,得到第一图形,第一图形可参考图8A,为图8A中的凸多边形。处理装置根据第一位置信息,确定至少一条辅助线,并通过至少一条辅助线将第一平面划分为N个区域。在图8A中,以至少一条辅助线的个数为1,N=2为例。例如对于图8A中的第一图形来说,所述的M条边可以包括该第一图形的所有边,或者也可以包括该第一图形的部分边,例如只包括第一图形中位于辅助线下方的边。Refer to FIG. 7, which is a schematic diagram of the target object, and the target object is, for example, a vehicle. The processing device, for example, measures the front part of the target object (the convex polygon in FIG. 7 represents the measurement of the front part) to obtain a point cloud corresponding to the front part. The processing device projects the point cloud onto the first plane to obtain a first graph. The first graph may refer to FIG. 8A, which is the convex polygon in FIG. 8A. The processing device determines at least one auxiliary line according to the first position information, and divides the first plane into N areas through the at least one auxiliary line. In FIG. 8A, the number of at least one auxiliary line is 1, and N=2 as an example. For example, for the first graphic in FIG. 8A, the M edges may include all the edges of the first graphic, or may also include part of the edges of the first graphic, for example, only include the auxiliary lines in the first graphic. The lower side.
对于M条边中的每条边,都可以按照上述方式确定对应的边界框,从而可以得到M 个边界框。For each of the M edges, the corresponding bounding box can be determined in the above manner, so that M bounding boxes can be obtained.
另外,对于M条边来说,如果有两条边是平行的,或者是垂直的,那么只需根据这两条边中的任意一条边确定一个边界框即可,无需根据这两条边都确定边界框。因为根据这样的两条边所确定的边界框可能是相同的,因此确定一次即可,有助于减小计算量。In addition, for M edges, if there are two edges that are parallel or vertical, then only a bounding box needs to be determined based on any one of the two edges, and it is not necessary to determine a bounding box based on both edges. Determine the bounding box. Because the bounding box determined based on such two edges may be the same, it is sufficient to determine it once, which helps to reduce the amount of calculation.
作为一种可选的方式,为了得到更多的边界框,使得选择范围更为宽泛,除了可以根据M条边中的每条边确定边界框之外,还可以根据辅助线确定边界框。例如,还可以将至少一条辅助线中的每条辅助线作为参考边,确定边界框,共确定P个边界框。其中,P的取值可以与至少一条辅助线的个数相同。例如,要根据图8A所示的辅助线确定边界框,因为所确定的边界框需要将第一图形包括在内,因此该辅助线不能作为边界框的一条边,而可能位于该边界框内。As an optional way, in order to obtain more bounding boxes and make the selection range wider, in addition to determining the bounding box based on each of the M sides, the bounding box may also be determined based on auxiliary lines. For example, each of the at least one auxiliary line may be used as a reference edge to determine the bounding box, and a total of P bounding boxes may be determined. Among them, the value of P can be the same as the number of at least one auxiliary line. For example, it is necessary to determine the bounding box according to the auxiliary line shown in FIG. 8A. Because the determined bounding box needs to include the first graphic, the auxiliary line cannot be used as an edge of the bounding box, but may be located in the bounding box.
如果要根据至少一条辅助线确定P个边界框,则也是同样的。对于M条边以及至少一条辅助线来说,如果有两条边是平行的,或者是垂直的,那么只需根据这两条边中的任意一条边确定一个边界框即可,无需根据这两条边都确定边界框。The same is true if P bounding boxes are to be determined based on at least one auxiliary line. For M edges and at least one auxiliary line, if there are two edges that are parallel or perpendicular, you only need to determine a bounding box based on any one of the two edges. All edges determine the bounding box.
S53、确定M个边界框中的每个边界框对应于N个区域的N个子损失值。也就是说,对于M个边界框中的每个边界框来说,都可以确定N个子损失值。当然,不同的边界框对应的子损失值可能相同,也可能不同。S53. Determine that each of the M bounding boxes corresponds to N sub-loss values of the N regions. In other words, for each bounding box of M bounding boxes, N sub-loss values can be determined. Of course, the sub-loss values corresponding to different bounding boxes may be the same or different.
例如对于M个边界框中的一个边界框来说(该边界框可以是M个边界框中的任意一个),该边界框对应于N个子损失值,N个子损失值中的任意一个子损失值,可以用于度量该子损失值对应的区域在该边界框侵占的自由空间中所对应的部分。该子损失值所对应的区域是指,该区域为被辅助线划分的所述N个区域中对应于该子损失值的区域。例如对于M个边界框中的每个边界框,其子损失值的含义都是类似的。一个边界框侵占的自由空间可以根据该边界框和N个区域确定。例如对于第一边界框,在第一图形所在的第一平面中,以辅助线为界,对于与第一图形有交集的区域来说,位于第一边界框内、且位于第一图形外的部分,可以称为该区域在第一边界框侵占的自由空间中对应的部分;另外,在第一图形所在的第一平面中,以辅助线为界,对于与第一图形没有交集的区域,在第一边界框侵占的自由空间中没有对应的部分,或者说,与第一图形没有交集的区域在第一边界框侵占的自由空间中对应的部分为空,或者说,第一边界框侵占的自由空间中,不包括N个区域中与第一图形没有交集的区域。可以理解为,第一边界框侵占的自由空间包括,N个区域中的与第一图形有交集的区域中,位于第一边界框内、且位于第一图形外的部分。当然此处的被边界框侵占的自由空间是对应于该边界框的。当边界框不同时,边界框所侵占的自由空间所包括的区域可能有所不同。对于每个边界框的N个区域,都有一一对应的子损失值,共N个子损失值,每个子损失值可以理解为用于表征对应区域中边界框描述点云的准确度。For example, for a bounding box in M bounding boxes (the bounding box can be any one of the M bounding boxes), the bounding box corresponds to N sub-loss values, any one of the N sub-loss values , Can be used to measure the corresponding part of the region corresponding to the sub-loss value in the free space occupied by the bounding box. The area corresponding to the sub-loss value refers to the area corresponding to the sub-loss value among the N areas divided by the auxiliary line. For example, for each bounding box of M bounding boxes, the meaning of the sub-loss value is similar. The free space occupied by a bounding box can be determined according to the bounding box and N regions. For example, for the first bounding box, in the first plane where the first graphic is located, the auxiliary line is used as the boundary. For the area that has an intersection with the first graphic, the area located in the first bounding box and outside the first graphic The part can be called the corresponding part of the area in the free space occupied by the first bounding box; in addition, in the first plane where the first graph is located, with the auxiliary line as the boundary, for the area that does not intersect with the first graph, There is no corresponding part in the free space occupied by the first bounding box, or in other words, the area that does not intersect with the first graphic is empty in the free space occupied by the first bounding box, in other words, the first bounding box occupies In the free space of, the area that does not intersect with the first graph among the N areas is not included. It can be understood that the free space occupied by the first bounding box includes a portion of the N areas that overlaps with the first graph and is located in the first bounding box and outside the first graph. Of course, the free space occupied by the bounding box here corresponds to the bounding box. When the bounding boxes are different, the areas included in the free space occupied by the bounding boxes may be different. For each of the N regions of the bounding box, there are one-to-one corresponding sub-loss values, and there are a total of N sub-loss values. Each sub-loss value can be understood as representing the accuracy of the point cloud described by the bounding box in the corresponding region.
为了更好理解,下面以M个边界框中的第一边界框为例来描述。对于第一边界框来说,可以对应N个子损失值,N个子损失值中例如包括第一子损失值,第一子损失值可以用于度量第一子损失值对应的区域在第一边界框侵占的自由空间中所对应的部分。其中,第一子损失值所对应的区域是指,被辅助线划分的所述N个区域中对应于第一子损失值的第一区域,另外这里的第一边界框侵占的自由空间,是指被第一边界框侵占的自由空间,或者说,是第一边界框对应的自由空间。关于第一边界框侵占的自由空间,在前文已有介绍。For a better understanding, the following description takes the first bounding box of M bounding boxes as an example. For the first bounding box, it can correspond to N sub-loss values. The N sub-loss values include, for example, the first sub-loss value. The first sub-loss value can be used to measure that the area corresponding to the first sub-loss value is in the first bounding box. The corresponding part of the occupied free space. The area corresponding to the first sub-loss value refers to the first area corresponding to the first sub-loss value among the N areas divided by the auxiliary line. In addition, the free space occupied by the first bounding box here is Refers to the free space occupied by the first bounding box, or in other words, the free space corresponding to the first bounding box. The free space occupied by the first bounding box has been introduced above.
在本申请实施例中,对于一个边界框来说,一个区域的子损失值,例如可以与该区域 在侵占自由空间中对应的部分的面积有关,所述的侵占自由空间,是指该边界框侵占的自由空间。例如,以图8A所示的凸多边形的一条边为参考边,可以确定一个边界框,可参考图8B。图8A中,通过辅助线将凸多边形所在的平面分成了两个区域,这两个区域均包括点数据。对于图8B所示的边界框(图8B中的虚线框表示边界框)来说,斜线部分表示该边界框侵占的自由空间。图8B所示的第一平面被划分为2个区域,其中,区域1对应的置信度较高,区域2对应的置信度较低。区域1在该边界框侵占的自由空间中所对应的部分,是图8B中的“/”所示的部分,区域2在该边界框侵占的自由空间中所对应的部分,是图8B中的“\”所示的部分。那么,区域1的子损失值,可以与图8B中的“/”所示的部分的面积有关,区域2的子损失值,可以与图8B中的“\”所示的部分的面积有关。In the embodiment of this application, for a bounding box, the sub-loss value of a region may be related to the area of the corresponding part of the region in the free space occupied by the region. The free space occupied refers to the bounding box. Free space occupied. For example, taking an edge of the convex polygon shown in FIG. 8A as a reference edge, a bounding box can be determined, and you can refer to FIG. 8B. In FIG. 8A, the plane where the convex polygon is located is divided into two regions by auxiliary lines, and both regions include point data. For the bounding box shown in FIG. 8B (the dashed box in FIG. 8B represents the bounding box), the oblique line represents the free space occupied by the bounding box. The first plane shown in FIG. 8B is divided into two regions, where the confidence level corresponding to region 1 is higher, and the confidence level corresponding to region 2 is lower. The corresponding part of area 1 in the free space occupied by the bounding box is the part shown by "/" in FIG. 8B, and the corresponding part of area 2 in the free space occupied by the bounding box is the part in FIG. 8B The part shown by "\". Then, the sub-loss value of area 1 may be related to the area of the part shown by "/" in FIG. 8B, and the sub-loss value of area 2 may be related to the area of the part shown by "\" in FIG. 8B.
又例如,以图9A所示的凸多边形的一条边为参考边,可以确定一个边界框,可参考图9B。图9A中,通过辅助线将凸多边形所在的平面分成了两个区域,但是其中的区域2并不包括点数据,区域1包括点数据。对于图9B所示的边界框(图9B中的虚线框表示边界框)来说,斜线部分表示该边界框侵占的自由空间。图9B所示的第一平面被划分为2个区域,其中,区域1对应的置信度较高,区域2对应的置信度较低。区域1在该边界框侵占的自由空间中所对应的部分,是图9B中的“/”所标记的部分,区域2在该边界框侵占的自由空间中没有对应的部分。那么,区域1的子损失值,可以与图9B中的“/”所标记的部分的面积有关,区域2的子损失值,可以为0。For another example, taking one side of the convex polygon shown in FIG. 9A as a reference side, a bounding box can be determined, and you can refer to FIG. 9B. In FIG. 9A, the plane where the convex polygon is located is divided into two areas by the auxiliary line, but area 2 does not include point data, and area 1 includes point data. For the bounding box shown in FIG. 9B (the dashed box in FIG. 9B represents the bounding box), the oblique line represents the free space occupied by the bounding box. The first plane shown in FIG. 9B is divided into two regions, where the confidence level corresponding to region 1 is higher, and the confidence level corresponding to region 2 is lower. The corresponding part of area 1 in the free space occupied by the bounding box is the part marked by "/" in FIG. 9B, and area 2 has no corresponding part in the free space occupied by the bounding box. Then, the sub-loss value of area 1 may be related to the area of the part marked by "/" in FIG. 9B, and the sub-loss value of area 2 may be zero.
一个区域的子损失值与该区域在边界框侵占的自由空间中对应的部分的面积有关。例如一种实现方式为,子损失值就是面积,或者另一种实现方式为,子损失值是面积的函数。N个区域中,对于与第一图形有交集的区域,因为在边界框侵占的自由空间中有对应的部分,因此这类区域对应的子损失值可以大于0;而N个区域中,对于与第一图形没有交集的区域,因为在边界框侵占的自由空间中没有对应的部分,因此这类区域对应的子损失值可以等于0。The sub-loss value of a region is related to the area of the corresponding part of the region in the free space occupied by the bounding box. For example, one implementation is that the sub-loss value is the area, or another implementation is that the sub-loss value is a function of the area. Among the N regions, for the regions that overlap with the first graph, because there are corresponding parts in the free space occupied by the bounding box, the sub-loss value corresponding to this type of region can be greater than 0; while in the N regions, for and The first graph has no intersection area, because there is no corresponding part in the free space occupied by the bounding box, so the sub-loss value corresponding to this type of area can be equal to zero.
例如,第一平面被划分为N个区域,对于一个边界框来说,这N个区域在该边界框侵占的自由空间中对应的面积例如分别为S 1,S 2,……,S N。那么对于该边界框来说,这N个区域对应的N个子损失值例如表示为f(S 1),f(S 2),……,f(S N),其中,f(x)表示x的函数。在本申请实施例中,f(x)可以是单调增函数,例如线性函数、指数函数或对数函数等均可。 For example, the first plane is divided into N regions. For a bounding box, the corresponding areas of the N regions in the free space occupied by the bounding box are, for example, S 1 , S 2 , ..., S N, respectively . Then for the bounding box, the N sub-loss values corresponding to the N regions are expressed as f(S 1 ), f(S 2 ),..., f(S N ), where f(x) represents x The function. In the embodiment of the present application, f(x) may be a monotonically increasing function, such as a linear function, an exponential function, or a logarithmic function.
S54、根据每个边界框对应的N个子损失值,确定每个边界框对应的损失值。S54: Determine the loss value corresponding to each bounding box according to the N sub-loss values corresponding to each bounding box.
对于M个边界框中的一个边界框来说,处理装置在得到该边界框对应的N个子损失值后,可以根据这N个子损失值得到该边界框对应的损失值。根据子损失值得到损失值的方式可以有多种,下面介绍一种。例如对于M个边界框中的第一边界框来说,第一边界框对应的子损失值可以满足如下关系:For a bounding box of M bounding boxes, after obtaining the N sub-loss values corresponding to the bounding box, the processing device can obtain the loss value corresponding to the bounding box according to the N sub-loss values. There are many ways to obtain the loss value according to the sub-loss value, one of which is introduced below. For example, for the first bounding box of M bounding boxes, the sub-loss value corresponding to the first bounding box may satisfy the following relationship:
cost=a 1f(S 1)+a 2f(S 2)+……+a Nf(S N)       (公式1) cost=a 1 f(S 1 )+a 2 f(S 2 )+……+a N f(S N ) (Formula 1)
公式1中,cost表示第一边界框对应的子损失值,a 1,a 2,……,a N表示N个系数,这N个系数与N个区域一一对应。S 1,S 2,……,S N分别表示N个区域在第一边界框侵占的自由空间中对应的N个部分的面积,例如S 1表示N个区域中的第一区域在第一边界框侵占的自由空间中所对应的部分的面积,S 2表示N个区域中的第二区域在第一边界框侵占的自由空间中所对应的部分的面积,以此类推。f(S 1),f(S 2),……,f(S N)表示N个区域的N个子损失值,例如f(S 1)表示N个区域中的第一区域的子损失值,以此类推。 In formula 1, cost represents the sub-loss value corresponding to the first bounding box, a 1 , a 2 ,..., a N represents N coefficients, and these N coefficients correspond to N regions one-to-one. S 1 , S 2 ,..., S N respectively represent the area of the corresponding N parts of the N regions in the free space occupied by the first bounding box. For example, S 1 represents that the first region of the N regions is at the first boundary The area of the corresponding part of the free space occupied by the frame, S 2 represents the area of the corresponding part of the second area of the N regions in the free space occupied by the first bounding box, and so on. f(S 1 ), f(S 2 ),..., f(S N ) represents the N sub-loss values of N regions, for example, f(S 1 ) represents the sub-loss value of the first region among the N regions, And so on.
N个系数中的每个系数,可以大于或等于0。N个系数中,可能有部分系数相同,或 者N个系数也可以均不相同。例如,N个系数可以根据置信度来确定。确定N个系数的一种原则例如为,在计算损失值时,观测准确区对应的子损失值的权重应该尽量大,而观测模糊区对应的子损失值的权重应该尽量小,或者说,置信度较高的区域对应的子损失值的权重应该尽量大,而置信度较小的区域对应的子损失值的权重应该尽量小。例如a i是N个系数中的一个,a i可以是根据第i置信度确定的,第i置信度是N个置信度中的一个,且a i和第i置信度均对应于N个区域中的第i个区域,1≤i≤N。 Each of the N coefficients can be greater than or equal to zero. Among the N coefficients, some of the coefficients may be the same, or the N coefficients may all be different. For example, N coefficients can be determined according to the degree of confidence. A principle for determining N coefficients is, for example, when calculating the loss value, the weight of the sub-loss value corresponding to the accurate observation area should be as large as possible, and the weight of the sub-loss value corresponding to the observable fuzzy area should be as small as possible, or in other words, confidence The weight of the sub-loss value corresponding to the area with higher degree should be as large as possible, and the weight of the sub-loss value corresponding to the area with lower confidence degree should be as small as possible. For example, a i is one of N coefficients, a i can be determined according to the i-th confidence level, the i-th confidence level is one of the N confidence levels, and both a i and the i-th confidence level correspond to N regions The i-th region in, 1≤i≤N.
例如,系数a 1对应于区域1,系数a 2对应于区域2,a 1可以根据区域1的置信度确定,a 2可以根据区域2的置信度确定,区域1的置信度大于区域2的置信度,那么a 1可以大于a 2For example, the coefficient a 1 corresponds to area 1, the coefficient a 2 corresponds to area 2, a 1 can be determined according to the confidence of area 1, a 2 can be determined according to the confidence of area 2, and the confidence of area 1 is greater than the confidence of area 2. Degree, then a 1 can be greater than a 2 .
对于M个边界框中的每个边界框,处理装置都可以按照类似的方式确定对应的N个子损失值,以及根据N个子损失值确定损失值。这样就可以确定M个边界框对应的M个损失值。在本申请实施例中,通过将边界框侵占的自由空间作为子损失值衡量的对象,可以尽量减小自遮挡的现象对观测结果的影响,相对于将第一平面内的区域的面积作为衡量对象的方式来说,本申请实施例的方式更为合理。For each bounding box of the M bounding boxes, the processing device can determine the corresponding N sub-loss values in a similar manner, and determine the loss value according to the N sub-loss values. In this way, M loss values corresponding to M bounding boxes can be determined. In the embodiment of this application, by taking the free space occupied by the bounding box as the object of the sub-loss value measurement, the effect of the self-occlusion phenomenon on the observation result can be minimized, as opposed to taking the area of the area in the first plane as the measurement result. In terms of objects, the method of the embodiment of this application is more reasonable.
在本申请实施例中,处理装置可以先确定M个边界框,待M个边界框均确定完毕后,再分别确定M个边界框中的每个边界框对应的N个子损失值;或者,处理装置也可以在确定一个边界框后就确定该边界框对应的N个子损失值,之后再确定下一个边界框及其子损失值。In the embodiment of the present application, the processing device may first determine M bounding boxes, and after the M bounding boxes are all determined, respectively determine the N sub-loss values corresponding to each bounding box of the M bounding boxes; or, process The device may also determine the N sub-loss values corresponding to the bounding box after determining a bounding box, and then determine the next bounding box and its sub-loss values.
作为一种可选的实施方式,如果在S52中根据至少一条辅助线确定了P个边界框,那么,对于P个边界框中的每个边界框,也可以按照类似的方式确定损失值,则可以确定P个损失值。如果是这种情况,那么相当于处理装置共确定了M+P个损失值。As an optional implementation manner, if P bounding boxes are determined according to at least one auxiliary line in S52, then for each bounding box of the P bounding boxes, the loss value can also be determined in a similar manner, then P loss values can be determined. If this is the case, it is equivalent to that the processing device has determined a total of M+P loss values.
另外,如果是这种情况,处理装置可以先确定M个边界框,待M个边界框均确定完毕后,分别确定M个边界框中的每个边界框对应的N个子损失值,之后再确定P个边界框,待P个边界框均确定完毕后,分别确定P个边界框中的每个边界框对应的N个子损失值;或者,处理装置可以先确定M+P个边界框,待M+P个边界框均确定完毕后,分别确定M+P个边界框中的每个边界框对应的N个子损失值;或者,处理装置也可以在确定M个边界框中的一个边界框后就确定该边界框对应的N个子损失值,之后再确定下一个边界框及其子损失值,待将M个边界框和M个边界框对应的子损失值均确定完毕后,再确定P个边界框中的一个边界框,之后确定该边界框对应的N个子损失值,之后再确定P个边界框中的下一个边界框及其对应的子损失值;或者,处理装置也可以在确定一个边界框后就确定该边界框对应的N个子损失值,之后再确定下一个边界框及其子损失值,不区分边界框是属于M个边界框还是属于P个边界框。In addition, if this is the case, the processing device may first determine M bounding boxes, and after the M bounding boxes are all determined, respectively determine the N sub-loss values corresponding to each bounding box of the M bounding boxes, and then determine P bounding boxes, after the P bounding boxes are determined, the N sub-loss values corresponding to each bounding box of the P bounding boxes are determined respectively; or, the processing device may first determine M+P bounding boxes, and wait for M After the +P bounding boxes are all determined, respectively determine the N sub-loss values corresponding to each bounding box in the M+P bounding boxes; alternatively, the processing device can also determine a bounding box in the M bounding boxes. Determine the N sub-loss values corresponding to the bounding box, and then determine the next bounding box and its sub-loss values. After all the sub-loss values corresponding to the M bounding boxes and M bounding boxes are determined, determine the P boundaries A bounding box in the frame, and then determine the N sub-loss values corresponding to the bounding box, and then determine the next bounding box and its corresponding sub-loss value in the P bounding boxes; or, the processing device may also determine a boundary After the box, the N sub-loss values corresponding to the bounding box are determined, and then the next bounding box and its sub-loss values are determined, without distinguishing whether the bounding box belongs to M bounding boxes or P bounding boxes.
S55、将最小的损失值对应的边界框确定为点云的边界框。S55. Determine the bounding box corresponding to the smallest loss value as the bounding box of the point cloud.
如果处理装置只是根据M条边确定了M个边界框,未根据辅助线确定边界框,那么处理装置可以确定M个边界框对应的M个损失值中的最小值,并将该最小值对应的边界框确定为点云的边界框。在这种方式下,无需考虑辅助线对应的边界框,可以减小计算量。If the processing device only determines M bounding boxes based on the M edges, but does not determine the bounding boxes based on the auxiliary line, the processing device can determine the minimum of the M loss values corresponding to the M bounding boxes, and assign the minimum value to The bounding box is determined as the bounding box of the point cloud. In this way, there is no need to consider the bounding box corresponding to the auxiliary line, and the calculation amount can be reduced.
或者,如果处理装置既根据M条边确定了M个边界框,也根据至少一条辅助线确定了P个边界框,那么处理装置可以确定M个边界框对应的M个损失值和P个边界框对应的P个损失值(共M+P个损失值)中的最小值,并将该最小值对应的边界框确定为点云的边界框。在这种方式下,既可以考虑第一图形对应的边,也可以考虑辅助线,在选择点 云的边界框时可选的范围更大,可以使得所选择的边界框更为准确。Or, if the processing device determines M bounding boxes based on M edges and P bounding boxes based on at least one auxiliary line, then the processing device can determine M loss values and P bounding boxes corresponding to the M bounding boxes The minimum value of the corresponding P loss values (M+P loss values in total), and the bounding box corresponding to the minimum value is determined as the bounding box of the point cloud. In this way, both the edge corresponding to the first graph and the auxiliary line can be considered. The range of options when selecting the bounding box of the point cloud is larger, which can make the selected bounding box more accurate.
例如,处理装置可以在将边界框对应的子损失值均确定完毕后,再确定边界框对应的损失值;或者,处理装置在确定一个边界框对应的N个子损失值后,就可以确定该边界框对应的损失值,之后再确定下一个边界框对应的子损失值以及对应的损失值。For example, the processing device may determine the loss value corresponding to the bounding box after all the sub-loss values corresponding to the bounding box are determined; or the processing device may determine the boundary after determining the N sub-loss values corresponding to a bounding box The loss value corresponding to the box, and then the sub-loss value corresponding to the next bounding box and the corresponding loss value are determined.
在本申请实施例中,第一位置信息例如可以表示处理装置与点云之间的相对位置,从而可以根据处理装置与点云之间的相对位置,将点云中的第一平面划分为N个区域,对每个区域分别计算子损失值,这样就相当于在计算子损失值时考虑了处理装置与对象之间的相对位置。通过这种方式确定边界框,可以尽量减小自遮挡现象对观测结果的影响,提高了边界框的稳定性和合理性,提高对目标对象的观测结果的准确性,进而可以提高后续对目标对象的追踪或识别等处理过程的准确性。而且本申请实施例在计算损失值时,计算的是边界框侵占的相应区域的自由空间的度量,这也有助于减小自遮挡现象对观测结果的影响,这也就使得所确定的边界框更为准确。In the embodiment of the present application, the first position information may, for example, indicate the relative position between the processing device and the point cloud, so that the first plane in the point cloud can be divided into N according to the relative position between the processing device and the point cloud. For each area, the sub-loss value is calculated separately for each area, which is equivalent to considering the relative position between the processing device and the object when calculating the sub-loss value. By determining the bounding box in this way, the influence of self-occlusion phenomenon on the observation results can be minimized, the stability and rationality of the bounding box are improved, the accuracy of the observation results of the target object can be improved, and the subsequent detection of the target object can be improved. The accuracy of the tracking or identification process. Moreover, when calculating the loss value in the embodiment of this application, it calculates the free space measurement of the corresponding area occupied by the bounding box, which also helps to reduce the influence of the self-occlusion phenomenon on the observation result, which also makes the determined bounding box More accurate.
下面结合附图介绍本申请实施例中用来实现上述方法的装置。因此,上文中的内容均可以用于后续实施例中,重复的内容不再赘述。The device used to implement the foregoing method in the embodiments of the present application will be described below in conjunction with the accompanying drawings. Therefore, all the above content can be used in the subsequent embodiments, and the repeated content will not be repeated.
本申请实施例可以对处理装置进行功能模块的划分,例如,可对应各个功能划分各个功能模块,也可将两个或两个以上的功能集成在一个功能模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。The embodiment of the present application may divide the processing device into functional modules. For example, each functional module may be divided corresponding to each function, or two or more functions may be integrated into one functional module. The above-mentioned integrated modules can be implemented in the form of hardware or software functional modules. It should be noted that the division of modules in the embodiments of the present application is illustrative, and is only a logical function division, and there may be other division methods in actual implementation.
例如,以采用集成的方式划分处理装置各个功能模块的情况下,图10示出了本申请上述实施例中所涉及的处理装置的一种可能的结构示意图。该处理装置10例如为图5所示的实施例所涉及的处理装置,或者处理装置10也可以是设置在探测设备中的芯片或其他功能部件,探测设备例如为雷达(或,雷达装置)。该处理装置10可以包括处理模块1001和收发模块1002。当处理装置10是雷达时,处理模块1001可以是处理器,例如基带处理器,基带处理器中可以包括一个或多个中央处理单元(central processing unit,CPU),收发模块1002可以是收发器,可以包括天线和射频电路等。当处理装置10是具有上述雷达功能的部件时,处理模块1001可以是处理器,例如基带处理器,收发模块1002可以是射频单元。当处理装置10是芯片系统时,处理模块1001可以是芯片系统的处理器,可以包括一个或多个中央处理单元,收发模块1002可以是芯片系统(例如基带芯片)的输入输出接口。For example, in the case of dividing the functional modules of the processing apparatus in an integrated manner, FIG. 10 shows a possible schematic structural diagram of the processing apparatus involved in the foregoing embodiment of the present application. The processing device 10 is, for example, the processing device involved in the embodiment shown in FIG. 5, or the processing device 10 may also be a chip or other functional components provided in a detection device, and the detection device is, for example, a radar (or a radar device). The processing device 10 may include a processing module 1001 and a transceiver module 1002. When the processing device 10 is a radar, the processing module 1001 may be a processor, such as a baseband processor. The baseband processor may include one or more central processing units (CPU), and the transceiver module 1002 may be a transceiver, It can include antennas and radio frequency circuits. When the processing device 10 is a component with the aforementioned radar function, the processing module 1001 may be a processor, such as a baseband processor, and the transceiver module 1002 may be a radio frequency unit. When the processing device 10 is a chip system, the processing module 1001 may be a processor of the chip system and may include one or more central processing units, and the transceiver module 1002 may be an input and output interface of the chip system (for example, a baseband chip).
其中,处理模块1001可以用于执行图5所示的实施例中由处理装置所执行的除了采集点云的操作之外的全部操作,例如S51~S55,和/或用于支持本文所描述的技术的其它过程。收发模块1002可以用于执行图5所示的实施例中由处理装置所执行的全部采集操作,例如采集目标对象的点云的操作,和/或用于支持本文所描述的技术的其它过程。Among them, the processing module 1001 can be used to perform all operations performed by the processing device in the embodiment shown in FIG. 5 except for the operations of collecting point clouds, such as S51 to S55, and/or to support the operations described herein. Other processes of technology. The transceiver module 1002 may be used to perform all the collection operations performed by the processing device in the embodiment shown in FIG. 5, such as the operation of collecting the point cloud of the target object, and/or other processes used to support the technology described herein.
另外,收发模块1002可以是一个功能模块,该功能模块既能完成发送操作也能完成接收操作,例如收发模块1002可以用于执行由处理装置10所执行的全部发送操作和接收操作,例如,在执行发送操作时,可以认为收发模块1002是发送模块,而在执行接收操作时,可以认为收发模块1002是接收模块;或者,收发模块1002也可以是两个功能模块的统称,这两个功能模块分别为发送模块和接收模块,发送模块用于完成发送操作,例如发送模块可以用于执行由处理装置10所执行的全部发送操作,接收模块用于完成接收操 作,例如接收模块可以用于执行由处理装置10所执行的全部接收操作。In addition, the transceiver module 1002 may be a functional module that can perform both sending and receiving operations. For example, the transceiver module 1002 may be used to perform all the sending and receiving operations performed by the processing device 10, for example, When performing a sending operation, the transceiver module 1002 can be considered as a sending module, and when performing a receiving operation, the transceiver module 1002 can be considered as a receiving module; or, the transceiver module 1002 can also be a collective term for two functional modules. They are a sending module and a receiving module. The sending module is used to complete the sending operation. For example, the sending module can be used to perform all the sending operations performed by the processing device 10, and the receiving module is used to complete the receiving operation. For example, the receiving module can be used to perform All receiving operations performed by the processing device 10.
或者,收发模块1002也可以不属于处理装置10,例如收发模块1002和处理装置10都位于同一个车辆中,收发模块1002例如为该车辆中的通信单元,收发模块1002和处理装置10可以通信,此时处理装置10可以不需要主动探测目标,仅基于收发模块1002接收到的点云数据进行处理。Alternatively, the transceiver module 1002 may not belong to the processing device 10. For example, the transceiver module 1002 and the processing device 10 are both located in the same vehicle. The transceiver module 1002 is, for example, a communication unit in the vehicle. The transceiver module 1002 and the processing device 10 can communicate. At this time, the processing device 10 may not need to actively detect the target, and only perform processing based on the point cloud data received by the transceiver module 1002.
例如,处理模块1001,用于根据第一位置信息将第一图形所在的第一平面划分为N个区域,所述第一位置信息是根据处理装置的位置和点云的位置确定的,所述第一图形为将所述点云投影到所述第一平面得到的二维图形,所述第一图形包括M条边,所述点云为收发模块1002对目标对象进行测量得到的点数据集合,N为大于或等于2的整数,M为正整数;For example, the processing module 1001 is configured to divide the first plane where the first graphic is located into N regions according to the first position information, the first position information is determined according to the position of the processing device and the position of the point cloud, the The first graphic is a two-dimensional graphic obtained by projecting the point cloud onto the first plane, the first graphic includes M edges, and the point cloud is a set of point data obtained by the transceiver module 1002 measuring the target object , N is an integer greater than or equal to 2, and M is a positive integer;
处理模块1001,还用于以所述M条边中的每条边作为参考边,确定一个边界框,共得到M个边界框;The processing module 1001 is further configured to determine a bounding box using each of the M edges as a reference edge, and obtain a total of M bounding boxes;
处理模块1001,还用于确定所述M个边界框中的每个边界框对应于所述N个区域的N个子损失值,所述N个子损失值中的第一子损失值,用于度量所述第一子损失值对应的区域在所述每个边界框侵占的自由空间中所对应的部分,所述每个边界框侵占的自由空间是根据所述每个边界框和所述N个区域确定的;The processing module 1001 is further configured to determine that each bounding box in the M bounding boxes corresponds to the N sub-loss values of the N regions, and the first sub-loss value of the N sub-loss values is used to measure The portion corresponding to the area corresponding to the first sub-loss value in the free space occupied by each bounding box, and the free space occupied by each bounding box is based on each bounding box and the N Regionally determined
处理模块1001,还用于根据所述N个子损失值,确定所述每个边界框对应的损失值;The processing module 1001 is further configured to determine the loss value corresponding to each bounding box according to the N sub-loss values;
处理模块1001,还用于将最小的损失值对应的边界框确定为所述点云的边界框。The processing module 1001 is further configured to determine the bounding box corresponding to the smallest loss value as the bounding box of the point cloud.
作为一种可选的实施方式,处理模块1001用于通过如下方式根据第一位置信息将第一图形所在的第一平面划分为N个区域:As an optional implementation manner, the processing module 1001 is configured to divide the first plane where the first graphic is located into N regions according to the first position information in the following manner:
根据所述第一位置信息,确定至少一条辅助线;Determine at least one auxiliary line according to the first position information;
根据所述至少一条辅助线将所述第一平面划分为所述N个区域。The first plane is divided into the N regions according to the at least one auxiliary line.
作为一种可选的实施方式,As an optional implementation,
处理模块1001,还用于以所述至少一条辅助线中的每条辅助线作为参考边,确定一个边界框,共确定P个边界框;The processing module 1001 is further configured to use each of the at least one auxiliary line as a reference edge to determine a bounding box, and determine P bounding boxes in total;
处理模块1001用于通过如下方式将最小的损失值对应的边界框确定为所述点云的边界框:The processing module 1001 is configured to determine the bounding box corresponding to the smallest loss value as the bounding box of the point cloud in the following manner:
将所述M个边界框以及所述P个边界框中,最小的损失值对应的边界框确定为所述点云的边界框。Determine the bounding box corresponding to the smallest loss value of the M bounding boxes and the P bounding boxes as the bounding box of the point cloud.
作为一种可选的实施方式,所述N个区域对应于N个置信度,所述N个置信度用于指示所述N个区域内的点数据表征目标对象的准确度。As an optional implementation manner, the N areas correspond to N confidence levels, and the N confidence levels are used to indicate the accuracy of the point data in the N areas to characterize the target object.
作为一种可选的实施方式,所述N个置信度是根据所述点云的密度和/或所述点云到所述处理装置的距离确定的。As an optional implementation manner, the N confidence levels are determined according to the density of the point cloud and/or the distance from the point cloud to the processing device.
作为一种可选的实施方式,所述第一图形为凸多边形或椭圆形。As an optional implementation manner, the first figure is convex polygonal or elliptical.
作为一种可选的实施方式,所述M个边界框包括第一边界框,所述第一边界框对应于所述N个子损失值,所述N个子损失值包括所述第一子损失值,所述第一子损失值对应于所述N个区域中的第一区域,所述第一子损失值是所述第一边界框侵占的所述自由空间中对应于所述第一区域的面积,所述第一边界框侵占的所述自由空间是根据所述第一边界框和所述N个区域确定的。As an optional implementation manner, the M bounding boxes include a first bounding box, the first bounding box corresponds to the N sub-loss values, and the N sub-loss values include the first sub-loss values , The first sub-loss value corresponds to a first area in the N areas, and the first sub-loss value is a value corresponding to the first area in the free space occupied by the first bounding box Area, the free space occupied by the first bounding box is determined according to the first bounding box and the N areas.
作为一种可选的实施方式,所述第一边界框对应的损失值,满足如下关系:As an optional implementation manner, the loss value corresponding to the first bounding box satisfies the following relationship:
cost=a 1f(S 1)+a 2f(S 2)+……+a Nf(S N) cost=a 1 f(S 1 )+a 2 f(S 2 )+……+a N f(S N )
其中,cost表示所述第一边界框对应的损失值,a 1,a 2,……,a N表示N个系数,所述N个系数与所述N个区域一一对应,S 1,S 2,……,S N表示所述N个区域在所述第一边界框侵占的自由空间中对应的N个部分的面积,f(x)表示x的函数。 Wherein, cost represents the loss value corresponding to the first bounding box, a 1 , a 2 ,..., a N represents N coefficients, and the N coefficients correspond to the N regions one to one, S 1 , S 2 ,..., S N represents the area of the corresponding N parts of the N regions in the free space occupied by the first bounding box, and f(x) represents a function of x.
作为一种可选的实施方式,a i是所述N个系数中的一个,所述a i是根据第i置信度确定的,所述第i置信度是N个置信度中的一个,且所述a i和所述第i置信度均对应于所述N个区域中的第i个区域,1≤i≤N。 As an optional implementation manner, a i is one of the N coefficients, the a i is determined according to the i-th confidence level, the i-th confidence level is one of the N confidence levels, and The a i and the i-th confidence degree both correspond to the i-th region in the N regions, and 1≦i≦N.
图11为本申请实施例提供的处理装置的另一种可能的结构示意图。该处理装置11可以包括处理器1101和收发器1102,其功能可分别与图10所展示的处理模块1001和收发模块1002的具体功能相对应,此处不再赘述。可选的,处理装置11还可以包含存储器1103,用于存储程序指令和/或数据,以供处理器1101读取。当然,处理装置11也可以不包括存储器1103,存储器1103可以位于处理装置11外部。FIG. 11 is a schematic diagram of another possible structure of the processing apparatus provided by an embodiment of the application. The processing device 11 may include a processor 1101 and a transceiver 1102, the functions of which may correspond to the specific functions of the processing module 1001 and the transceiver module 1002 shown in FIG. 10 respectively, and will not be repeated here. Optionally, the processing device 11 may further include a memory 1103 for storing program instructions and/or data for the processor 1101 to read. Of course, the processing device 11 may not include the memory 1103, and the memory 1103 may be located outside the processing device 11.
图12提供了处理装置的再一种可能的结构示意图。图10~图12所提供的处理装置可以实现上述实施例中的处理装置的功能。图10~图12所提供的处理装置可以为实际通信场景中雷达装置的部分或者全部,或者可以是集成在雷达装置中或者位于雷达装置外部的功能模块,例如可以是芯片系统,具体以实现相应的功能为准,不对处理装置结构和组成进行具体限定。Fig. 12 provides a schematic diagram of another possible structure of the processing device. The processing devices provided in FIGS. 10 to 12 can implement the functions of the processing devices in the foregoing embodiments. The processing devices provided in Figures 10 to 12 can be part or all of the radar device in the actual communication scenario, or can be a functional module integrated in the radar device or located outside the radar device, for example, can be a chip system, specifically to achieve the corresponding The function of the processing device shall prevail, and the structure and composition of the processing device shall not be specifically limited.
该可选的方式中,处理装置12包括发射天线1201、接收天线1202以及处理器1203。进一步可选的,处理装置12还包括混频器1204和/或振荡器1205。进一步可选的,处理装置12还可以包括低通滤波器和/或定向耦合器等。其中,发射天线1201和接收天线1202用于支持处理装置12进行无线电通信,发射天线1201支持雷达信号的发射,接收天线1202支持雷达信号的接收和/或反射信号的接收,以最终实现探测功能。处理器1203执行一些可能的确定和/或处理功能。进一步,处理器1203还控制发射天线1201和/或接收天线1202的操作。具体的,需要发射的信号通过处理器1203控制发射天线1201进行发射,通过接收天线1202接收到的信号可以传输给处理器1203进行相应的处理。处理装置12所包含的各个部件可用于配合执行图5所示的实施例所提供的方法。可选的,处理装置12还可以包含存储器,用于存储程序指令和/或数据。其中,发射天线1201和接收天线1202可以是独立设置的,也可以集成设置为收发天线,执行相应的收发功能。In this optional manner, the processing device 12 includes a transmitting antenna 1201, a receiving antenna 1202, and a processor 1203. Further optionally, the processing device 12 further includes a mixer 1204 and/or an oscillator 1205. Further optionally, the processing device 12 may also include a low-pass filter and/or a directional coupler, etc. Among them, the transmitting antenna 1201 and the receiving antenna 1202 are used to support the processing device 12 to perform radio communication, the transmitting antenna 1201 supports the transmission of radar signals, and the receiving antenna 1202 supports the reception of radar signals and/or the reception of reflected signals to finally realize the detection function. The processor 1203 performs some possible determination and/or processing functions. Further, the processor 1203 also controls the operation of the transmitting antenna 1201 and/or the receiving antenna 1202. Specifically, the signal to be transmitted is transmitted by the processor 1203 controlling the transmitting antenna 1201, and the signal received through the receiving antenna 1202 can be transmitted to the processor 1203 for corresponding processing. The various components included in the processing device 12 can be used to cooperate to execute the method provided in the embodiment shown in FIG. 5. Optionally, the processing device 12 may also include a memory for storing program instructions and/or data. Among them, the transmitting antenna 1201 and the receiving antenna 1202 may be set independently, or may be integratedly set as transmitting and receiving antennas to perform corresponding transmitting and receiving functions.
图13为本申请实施例提供的一种装置13的结构示意图。图13所示的装置13可以是处理装置本身,或者可以是能够完成处理装置的功能的芯片或电路,例如该芯片或电路可以设置在雷达装置中。图13所示的装置13可以包括处理器1301(例如处理模块1001可以通过处理器1301实现,处理器1101与处理器1301例如可以是同一部件)和接口电路1302(例如收发模块1002可以通过接口电路1302实现,收发器1102与接口电路1302例如为同一部件)。该处理器1301可以使得装置13实现图5所示的实施例所提供的方法中处理装置所执行的步骤。可选的,装置13还可以包括存储器1303,存储器1303可用于存储指令。处理器1301通过执行存储器1303所存储的指令,使得装置13实现图5所示的实施例所提供的方法中处理装置所执行的步骤。FIG. 13 is a schematic structural diagram of an apparatus 13 provided by an embodiment of this application. The device 13 shown in FIG. 13 may be the processing device itself, or may be a chip or circuit capable of completing the functions of the processing device, for example, the chip or circuit may be provided in a radar device. The apparatus 13 shown in FIG. 13 may include a processor 1301 (for example, the processing module 1001 may be implemented by the processor 1301, and the processor 1101 and the processor 1301 may be the same component, for example) and an interface circuit 1302 (for example, the transceiver module 1002 may be implemented by the interface circuit 1302, the transceiver 1102 and the interface circuit 1302 are, for example, the same component). The processor 1301 may enable the device 13 to implement the steps executed by the processing device in the method provided in the embodiment shown in FIG. 5. Optionally, the device 13 may further include a memory 1303, and the memory 1303 may be used to store instructions. The processor 1301 executes the instructions stored in the memory 1303 to enable the device 13 to implement the steps executed by the processing device in the method provided in the embodiment shown in FIG. 5.
进一步的,处理器1301、接口电路1302和存储器1303之间可以通过内部连接通路互相通信,传递控制和/或数据信号。存储器1303用于存储计算机程序,处理器1301可以从存储器1303中调用并运行计算机程序,以控制接口电路1302接收信号或发送信号,完成 图5所示的实施例所提供的方法中处理装置所执行的步骤。存储器1303可以集成在处理器1301中,也可以与处理器1301分开设置。Further, the processor 1301, the interface circuit 1302, and the memory 1303 can communicate with each other through internal connection paths, and transfer control and/or data signals. The memory 1303 is used to store a computer program, and the processor 1301 can call and run the computer program from the memory 1303 to control the interface circuit 1302 to receive or send a signal to complete the execution of the processing device in the method provided by the embodiment shown in FIG. 5 A step of. The memory 1303 may be integrated in the processor 1301, or may be provided separately from the processor 1301.
可选地,若装置13为设备,接口电路1302可以包括接收器和发送器。其中,接收器和发送器可以为相同的部件,或者为不同的部件。接收器和发送器为相同的部件时,可以将该部件称为收发器。Optionally, if the device 13 is a device, the interface circuit 1302 may include a receiver and a transmitter. Wherein, the receiver and the transmitter may be the same component or different components. When the receiver and transmitter are the same component, the component can be called a transceiver.
可选地,若装置13为芯片或电路,则接口电路1302可以包括输入接口和输出接口,输入接口和输出接口可以是相同的接口,或者可以分别是不同的接口。Optionally, if the device 13 is a chip or a circuit, the interface circuit 1302 may include an input interface and an output interface, and the input interface and the output interface may be the same interface, or may be different interfaces respectively.
可选地,若装置13为芯片或电路,装置13也可以不包括存储器1303,处理器1301可以读取该芯片或电路外部的存储器中的指令(程序或代码)以实现图5所示的实施例所提供的方法中处理装置执行的步骤。Optionally, if the device 13 is a chip or a circuit, the device 13 may not include the memory 1303, and the processor 1301 may read instructions (programs or codes) in the memory outside the chip or circuit to implement the implementation shown in FIG. 5. The steps in the method provided by the example are processed by the device.
可选地,若装置13为芯片或电路,则装置13可以包括电阻、电容或其他相应的功能部件,处理器1301或接口电路1302可以通过相应的功能部件实现。Optionally, if the device 13 is a chip or a circuit, the device 13 may include a resistor, a capacitor, or other corresponding functional components, and the processor 1301 or the interface circuit 1302 may be implemented by corresponding functional components.
作为一种实现方式,接口电路1302的功能可以考虑通过收发电路或收发的专用芯片实现。处理器1301可以考虑通过专用处理芯片、处理电路、处理器或通用芯片实现。As an implementation manner, the function of the interface circuit 1302 may be implemented by a transceiver circuit or a dedicated chip for transceiver. The processor 1301 may be implemented by a dedicated processing chip, a processing circuit, a processor, or a general-purpose chip.
作为另一种实现方式,可以考虑使用通用计算机的方式来实现本申请实施例提供的处理装置。即,将实现处理器1301、接口电路1302的功能的程序代码存储在存储器1303中,处理器1301通过执行存储器1303存储的程序代码来实现处理器1301、接口电路1302的功能。As another implementation manner, a general-purpose computer may be considered to implement the processing apparatus provided in the embodiments of the present application. That is, the program codes that realize the functions of the processor 1301 and the interface circuit 1302 are stored in the memory 1303, and the processor 1301 implements the functions of the processor 1301 and the interface circuit 1302 by executing the program codes stored in the memory 1303.
其中,以上列举的装置13中各模块或单元的功能和动作仅为示例性说明,装置13中各功能单元可用于执行图5所示的实施例中处理装置所执行的各动作或处理过程。这里为了避免赘述,省略其详细说明。Among them, the functions and actions of the modules or units in the device 13 listed above are only exemplary descriptions, and the functional units in the device 13 can be used to execute the actions or processing procedures performed by the processing device in the embodiment shown in FIG. 5. In order to avoid repetitive descriptions, detailed descriptions are omitted here.
再一种可选的方式,当使用软件实现处理装置时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地实现本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如软盘、硬盘、磁带)、光介质(例如DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。In yet another optional manner, when the processing device is implemented by software, it may be implemented in the form of a computer program product in whole or in part. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on the computer, all or part of the processes or functions described in the embodiments of the present application are realized. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable devices. The computer instructions may be stored in a computer-readable storage medium, or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions may be transmitted from a website, computer, server, or data center. Transmission to another website, computer, server, or data center via wired (such as coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (such as infrared, wireless, microwave, etc.). The computer-readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server or a data center integrated with one or more available media. The usable medium may be a magnetic medium, (for example, a floppy disk, a hard disk, and a magnetic tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid state disk (SSD)).
需要说明的是,用于执行本申请实施例提供的方法的上述处理装置中所包含的处理器可以是中央处理器(central processing unit,CPU)、通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application-specific integrated circuit,ASIC),现场可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件,硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。所述处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。It should be noted that the processor included in the above-mentioned processing device for executing the method provided by the embodiment of the present application may be a central processing unit (CPU), a general-purpose processor, or a digital signal processor. DSP), application-specific integrated circuit (ASIC), field programmable gate array (FPGA) or other programmable logic devices, transistor logic devices, hardware components or any combination thereof. It can implement or execute various exemplary logical blocks, modules, and circuits described in conjunction with the disclosure of this application. The processor may also be a combination for realizing computing functions, for example, including a combination of one or more microprocessors, a combination of a DSP and a microprocessor, and so on.
结合本申请实施例所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,RAM)、闪存、只读存储器(read-only memory,ROM)存储器、可擦除可编程只读存储器(erasable programmable read-only memory,EPROM)、电可擦除可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、寄存器、硬盘、移动硬盘、只读光盘(compact disc read-only memory,CD-ROM)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于处理装置中。当然,处理器和存储介质也可以作为分立组件存在于处理装置中。The steps of the method or algorithm described in the embodiments of the present application may be implemented in a hardware manner, or may be implemented in a manner in which a processor executes software instructions. Software instructions can be composed of corresponding software modules, which can be stored in random access memory (RAM), flash memory, read-only memory (ROM), erasable programmable read-only Memory (erasable programmable read-only memory, EPROM), electrically erasable programmable read-only memory (EEPROM), register, hard disk, mobile hard disk, compact disc (read-only memory) , CD-ROM) or any other form of storage medium known in the art. An exemplary storage medium is coupled to the processor, so that the processor can read information from the storage medium and write information to the storage medium. Of course, the storage medium may also be an integral part of the processor. The processor and the storage medium may be located in the ASIC. In addition, the ASIC may be located in the processing device. Of course, the processor and the storage medium may also exist as discrete components in the processing device.
可以理解的是,图10~图13仅仅示出了处理装置的简化设计。在实际应用中,处理装置可以包含任意数量的收发器,处理器,控制器,存储器以及其他可能存在的元件。It is understandable that FIGS. 10 to 13 only show simplified designs of the processing device. In practical applications, the processing device may include any number of transceivers, processors, controllers, memories, and other possible components.
如果处理装置不包括收发模块,那么本申请实施例还提供一种探测系统,其包含执行本申请上述实施例所提到的处理装置和通信单元,通信单元就用于执行上述的处理装置中的收发模块(例如收发模块1002)所执行的步骤。该探测系统可以是一个设备,各个装置都位于该设备中,作为该设备的功能模块,或者,该探测系统也可以包括多个设备,处理装置和通信单元等分别位于不同的设备中。If the processing device does not include a transceiver module, an embodiment of the application also provides a detection system, which includes the processing device and communication unit that executes the processing device and the communication unit mentioned in the foregoing embodiment of the application, and the communication unit is used to execute the processing device in the foregoing processing device. The steps performed by the transceiver module (for example, the transceiver module 1002). The detection system may be a device, and each device is located in the device as a functional module of the device, or the detection system may also include multiple devices, and the processing device and the communication unit are located in different devices.
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。Through the description of the above embodiments, those skilled in the art can clearly understand that for the convenience and brevity of the description, only the division of the above-mentioned functional modules is used as an example for illustration. In practical applications, the above-mentioned functions can be allocated according to needs. It is completed by different functional modules, that is, the internal structure of the device is divided into different functional modules to complete all or part of the functions described above.
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided in this application, it should be understood that the disclosed device and method may be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the modules or units is only a logical function division. In actual implementation, there may be other division methods, for example, multiple units or components may be divided. It can be combined or integrated into another device, or some features can be omitted or not implemented. In addition, the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may be in electrical, mechanical or other forms.
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。The units described as separate parts may or may not be physically separate. The parts displayed as units may be one physical unit or multiple physical units, that is, they may be located in one place, or they may be distributed to multiple different places. . Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments.
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。In addition, the functional units in the various embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit. The above-mentioned integrated unit can be implemented in the form of hardware or software functional unit.
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solutions of the embodiments of the present application are essentially or the part that contributes to the prior art, or all or part of the technical solutions can be embodied in the form of a software product, and the software product is stored in a storage medium. It includes several instructions to make a device (which may be a single-chip microcomputer, a chip, etc.) or a processor (processor) execute all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage media include: U disk, mobile hard disk, ROM, RAM, magnetic disk or optical disk and other media that can store program codes.
以上所述,仅为本申请实施例的具体实施方式,但本申请实施例的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请实施例的保护范围之内。因此,本申请实施例的保护范围应以所述权利要求的保护范围为准。The above are only specific implementations of the embodiments of this application, but the scope of protection of the embodiments of this application is not limited to this. Any changes or substitutions within the technical scope disclosed in this application shall be covered in the implementation of this application. Within the scope of protection of the case. Therefore, the protection scope of the embodiments of the present application should be subject to the protection scope of the claims.

Claims (20)

  1. 一种确定点云的边界框的方法,其特征在于,包括:A method for determining the bounding box of a point cloud is characterized in that it includes:
    根据第一位置信息将第一图形所在的第一平面划分为N个区域,所述第一位置信息是根据处理装置的位置和点云的位置确定的,所述第一图形为将所述点云投影到所述第一平面得到的二维图形,所述第一图形包括M条边,所述点云为所述处理装置对目标对象进行测量得到的点数据集合,N为大于或等于2的整数,M为正整数;The first plane where the first graphic is located is divided into N regions according to the first position information, the first position information is determined according to the position of the processing device and the position of the point cloud, and the first graphic is A two-dimensional graph obtained by projecting a cloud onto the first plane, the first graph including M edges, the point cloud is a point data set obtained by the processing device measuring a target object, and N is greater than or equal to 2 Integer of, M is a positive integer;
    以所述M条边中的每条边作为参考边,确定一个边界框,共得到M个边界框;Using each of the M edges as a reference edge, determine a bounding box to obtain a total of M bounding boxes;
    确定所述M个边界框中的每个边界框对应于所述N个区域的N个子损失值,所述N个子损失值中的第一子损失值,用于度量所述第一子损失值对应的区域在所述每个边界框侵占的自由空间中所对应的部分,所述每个边界框侵占的自由空间是根据所述每个边界框和所述N个区域确定的;It is determined that each bounding box in the M bounding boxes corresponds to the N sub-loss values of the N regions, and the first sub-loss value of the N sub-loss values is used to measure the first sub-loss value A corresponding area in the free space occupied by each bounding box, where the free space occupied by each bounding box is determined according to each bounding box and the N areas;
    根据所述N个子损失值,确定所述每个边界框对应的损失值;Determine the loss value corresponding to each bounding box according to the N sub-loss values;
    将最小的损失值对应的边界框确定为所述点云的边界框。The bounding box corresponding to the smallest loss value is determined as the bounding box of the point cloud.
  2. 根据权利要求1所述的方法,其特征在于,根据第一位置信息将第一图形所在的第一平面划分为N个区域,包括:The method according to claim 1, wherein the dividing the first plane where the first graphic is located into N regions according to the first position information comprises:
    根据所述第一位置信息,确定至少一条辅助线;Determine at least one auxiliary line according to the first position information;
    根据所述至少一条辅助线将所述第一平面划分为所述N个区域。The first plane is divided into the N regions according to the at least one auxiliary line.
  3. 根据权利要求2所述的方法,其特征在于,所述方法还包括:The method according to claim 2, wherein the method further comprises:
    以所述至少一条辅助线中的每条辅助线作为参考边,确定一个边界框,共确定P个边界框;Using each of the at least one auxiliary line as a reference edge, determine a bounding box, and determine a total of P bounding boxes;
    将最小的损失值对应的边界框确定为所述点云的边界框,包括:Determining the bounding box corresponding to the smallest loss value as the bounding box of the point cloud includes:
    将所述M个边界框以及所述P个边界框中,最小的损失值对应的边界框确定为所述点云的边界框。Determine the bounding box corresponding to the smallest loss value of the M bounding boxes and the P bounding boxes as the bounding box of the point cloud.
  4. 根据权利要求1~3任一项所述的方法,其特征在于,所述N个区域对应于N个置信度,所述N个置信度用于指示所述N个区域内的点数据表征目标对象的准确度。The method according to any one of claims 1 to 3, wherein the N areas correspond to N confidence levels, and the N confidence levels are used to indicate that the point data in the N areas represents a target The accuracy of the object.
  5. 根据权利要求4所述的方法,其特征在于,所述N个置信度是根据所述点云的密度和/或所述点云到所述处理装置的距离确定的。The method according to claim 4, wherein the N confidence levels are determined according to the density of the point cloud and/or the distance from the point cloud to the processing device.
  6. 根据权利要求1~5任一项所述的方法,其特征在于,所述第一图形为凸多边形或椭圆形。The method according to any one of claims 1 to 5, wherein the first figure is a convex polygon or an ellipse.
  7. 根据权利要求1~6任一项所述的方法,其特征在于,所述M个边界框包括第一边界框,所述第一边界框对应于所述N个子损失值,所述N个子损失值包括所述第一子损失值,所述第一子损失值对应于所述N个区域中的第一区域,所述第一子损失值是所述第一边界框侵占的所述自由空间中对应于所述第一区域的面积,所述第一边界框侵占的所述自由空间是根据所述第一边界框和所述N个区域确定的。The method according to any one of claims 1 to 6, wherein the M bounding boxes comprise a first bounding box, the first bounding box corresponds to the N sub-loss values, and the N sub-losses The value includes the first sub-loss value, the first sub-loss value corresponds to the first area in the N areas, and the first sub-loss value is the free space occupied by the first bounding box Corresponding to the area of the first region, and the free space occupied by the first bounding box is determined according to the first bounding box and the N regions.
  8. 根据权利要求7所述的方法,其特征在于,所述第一边界框对应的损失值,满足如下关系:The method according to claim 7, wherein the loss value corresponding to the first bounding box satisfies the following relationship:
    cost=a 1f(S 1)+a 2f(S 2)+……+a Nf(S N) cost=a 1 f(S 1 )+a 2 f(S 2 )+……+a N f(S N )
    其中,cost表示所述第一边界框对应的损失值,a 1,a 2,……,a N表示N个系数,所述N个系数与所述N个区域一一对应,S 1,S 2,……,S N表示所述N个区域在所述第一边界框侵 占的自由空间中对应的N个部分的面积,f(x)表示x的函数。 Wherein, cost represents the loss value corresponding to the first bounding box, a 1 , a 2 ,..., a N represents N coefficients, and the N coefficients correspond to the N regions one to one, S 1 , S 2 ,..., S N represents the area of the corresponding N parts of the N regions in the free space occupied by the first bounding box, and f(x) represents a function of x.
  9. 根据权利要求8所述的方法,其特征在于,a i是所述N个系数中的一个,所述a i是根据第i置信度确定的,所述第i置信度是N个置信度中的一个,且所述a i和所述第i置信度均对应于所述N个区域中的第i个区域,1≤i≤N。 The method according to claim 8, wherein a i is one of the N coefficients, the a i is determined according to the i-th confidence level, and the i-th confidence level is among the N confidence levels And the a i and the i-th confidence degree both correspond to the i-th region in the N regions, and 1≤i≤N.
  10. 一种处理装置,其特征在于,包括处理模块和收发模块,其中,A processing device, characterized in that it comprises a processing module and a transceiver module, wherein:
    所述处理模块,用于根据第一位置信息将第一图形所在的第一平面划分为N个区域,所述第一位置信息是根据处理装置的位置和点云的位置确定的,所述第一图形为将所述点云投影到所述第一平面得到的二维图形,所述第一图形包括M条边,所述点云为所述收发模块对目标对象进行测量得到的点数据集合,N为大于或等于2的整数,M为正整数;The processing module is configured to divide the first plane where the first graphic is located into N regions according to the first position information, the first position information is determined according to the position of the processing device and the position of the point cloud, the first A graph is a two-dimensional graph obtained by projecting the point cloud onto the first plane, the first graph includes M edges, and the point cloud is a set of point data obtained by measuring the target object by the transceiver module , N is an integer greater than or equal to 2, and M is a positive integer;
    所述处理模块,还用于以所述M条边中的每条边作为参考边,确定一个边界框,共得到M个边界框;The processing module is further configured to use each of the M edges as a reference edge to determine a bounding box, and obtain a total of M bounding boxes;
    所述处理模块,还用于确定所述M个边界框中的每个边界框对应于所述N个区域的N个子损失值,所述N个子损失值中的第一子损失值,用于度量所述第一子损失值对应的区域在所述每个边界框侵占的自由空间中所对应的部分,所述每个边界框侵占的自由空间是根据所述每个边界框和所述N个区域确定的;The processing module is further configured to determine that each of the M bounding boxes corresponds to the N sub-loss values of the N regions, and the first sub-loss value of the N sub-loss values is used for Measure the corresponding part of the area corresponding to the first sub-loss value in the free space occupied by each bounding box, and the free space occupied by each bounding box is based on each bounding box and the N Determined by a region;
    所述处理模块,还用于根据所述N个子损失值,确定所述每个边界框对应的损失值;The processing module is further configured to determine the loss value corresponding to each bounding box according to the N sub-loss values;
    所述处理模块,还用于将最小的损失值对应的边界框确定为所述点云的边界框。The processing module is further configured to determine the bounding box corresponding to the smallest loss value as the bounding box of the point cloud.
  11. 根据权利要求10所述的处理装置,其特征在于,所述处理模块用于通过如下方式根据第一位置信息将第一图形所在的第一平面划分为N个区域:The processing device according to claim 10, wherein the processing module is configured to divide the first plane on which the first graphic is located into N regions according to the first position information in the following manner:
    根据所述第一位置信息,确定至少一条辅助线;Determine at least one auxiliary line according to the first position information;
    根据所述至少一条辅助线将所述第一平面划分为所述N个区域。The first plane is divided into the N regions according to the at least one auxiliary line.
  12. 根据权利要求11所述的处理装置,其特征在于,The processing device according to claim 11, wherein:
    所述处理模块,还用于以所述至少一条辅助线中的每条辅助线作为参考边,确定一个边界框,共确定P个边界框;The processing module is further configured to use each of the at least one auxiliary line as a reference edge to determine a bounding box, and determine P bounding boxes in total;
    所述处理模块用于通过如下方式将最小的损失值对应的边界框确定为所述点云的边界框:The processing module is configured to determine the bounding box corresponding to the smallest loss value as the bounding box of the point cloud in the following manner:
    将所述M个边界框以及所述P个边界框中,最小的损失值对应的边界框确定为所述点云的边界框。Determine the bounding box corresponding to the smallest loss value of the M bounding boxes and the P bounding boxes as the bounding box of the point cloud.
  13. 根据权利要求10~12任一项所述的处理装置,其特征在于,所述N个区域对应于N个置信度,所述N个置信度用于指示所述N个区域内的点数据表征目标对象的准确度。The processing device according to any one of claims 10 to 12, wherein the N areas correspond to N confidence levels, and the N confidence levels are used to indicate point data representations in the N areas The accuracy of the target object.
  14. 根据权利要求13所述的处理装置,其特征在于,所述N个置信度是根据所述点云的密度和/或所述点云到所述处理装置的距离确定的。The processing device according to claim 13, wherein the N confidence levels are determined according to the density of the point cloud and/or the distance from the point cloud to the processing device.
  15. 根据权利要求10~14任一项所述的处理装置,其特征在于,所述第一图形为凸多边形或椭圆形。The processing device according to any one of claims 10 to 14, wherein the first figure is a convex polygon or an ellipse.
  16. 根据权利要求10~15任一项所述的处理装置,其特征在于,所述M个边界框包括第一边界框,所述第一边界框对应于所述N个子损失值,所述N个子损失值包括所述第一子损失值,所述第一子损失值对应于所述N个区域中的第一区域,所述第一子损失值是所述第一边界框侵占的所述自由空间中对应于所述第一区域的面积,所述第一边界框侵占的所述自由空间是根据所述第一边界框和所述N个区域确定的。The processing device according to any one of claims 10 to 15, wherein the M bounding boxes comprise a first bounding box, the first bounding box corresponds to the N sub-loss values, and the N sub-loss values The loss value includes the first sub-loss value, the first sub-loss value corresponds to the first area in the N areas, and the first sub-loss value is the free area occupied by the first bounding box. The area in the space corresponding to the first region, and the free space occupied by the first bounding box is determined according to the first bounding box and the N regions.
  17. 根据权利要求16所述的处理装置,其特征在于,所述第一边界框对应的损失值, 满足如下关系:The processing device according to claim 16, wherein the loss value corresponding to the first bounding box satisfies the following relationship:
    cost=a 1f(S 1)+a 2f(S 2)+……+a Nf(S N) cost=a 1 f(S 1 )+a 2 f(S 2 )+……+a N f(S N )
    其中,cost表示所述第一边界框对应的损失值,a 1,a 2,……,a N表示N个系数,所述N个系数与所述N个区域一一对应,S 1,S 2,……,S N表示所述N个区域在所述第一边界框侵占的自由空间中对应的N个部分的面积,f(x)表示x的函数。 Wherein, cost represents the loss value corresponding to the first bounding box, a 1 , a 2 ,..., a N represents N coefficients, and the N coefficients correspond to the N regions one to one, S 1 , S 2 ,..., S N represents the area of the corresponding N parts of the N regions in the free space occupied by the first bounding box, and f(x) represents a function of x.
  18. 根据权利要求17所述的处理装置,其特征在于,a i是所述N个系数中的一个,所述a i是根据第i置信度确定的,所述第i置信度是N个置信度中的一个,且所述a i和所述第i置信度均对应于所述N个区域中的第i个区域,1≤i≤N。 The processing device according to claim 17, wherein a i is one of the N coefficients, the a i is determined according to the i-th confidence level, and the i-th confidence level is N confidence levels And the a i and the i-th confidence level both correspond to the i-th region in the N regions, and 1≦i≦N.
  19. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1~9中任意一项所述的方法。A computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program runs on a computer, the computer executes any one of claims 1-9 The method described.
  20. 一种芯片,其特征在于,包括处理器和通信接口,所述处理器用于读取指令以执行权利要求1~9中任意一项所述的方法。A chip, characterized by comprising a processor and a communication interface, the processor being used to read instructions to execute the method according to any one of claims 1-9.
PCT/CN2020/136800 2019-12-25 2020-12-16 Method for determining point cloud bounding box, and apparatus WO2021129483A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201911358284.0 2019-12-25
CN201911358284.0A CN113034539B (en) 2019-12-25 2019-12-25 Method and device for determining bounding box of point cloud

Publications (1)

Publication Number Publication Date
WO2021129483A1 true WO2021129483A1 (en) 2021-07-01

Family

ID=76458382

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/136800 WO2021129483A1 (en) 2019-12-25 2020-12-16 Method for determining point cloud bounding box, and apparatus

Country Status (2)

Country Link
CN (1) CN113034539B (en)
WO (1) WO2021129483A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115655262A (en) * 2022-12-26 2023-01-31 广东省科学院智能制造研究所 Deep learning perception-based multi-level semantic map construction method and device
CN116011107A (en) * 2023-01-10 2023-04-25 南京航空航天大学 Method, device and system for extracting hole characteristics of large composite material component

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101477691A (en) * 2008-12-26 2009-07-08 武汉大学 Discrete point zone topology boundary tracking process based edge length ratio constraint
CN104156988A (en) * 2014-08-05 2014-11-19 陕西汇图测绘地理信息有限公司 Urban building contour regularization method based on iteration minimum bounding rectangle
CN106407947A (en) * 2016-09-29 2017-02-15 百度在线网络技术(北京)有限公司 Target object recognition method and device applied to unmanned vehicle
CN110047133A (en) * 2019-04-16 2019-07-23 重庆大学 A kind of train boundary extraction method towards point cloud data
WO2019199083A1 (en) * 2018-04-12 2019-10-17 Samsung Electronics Co., Ltd. Method and apparatus for compressing and decompressing point clouds

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101477691A (en) * 2008-12-26 2009-07-08 武汉大学 Discrete point zone topology boundary tracking process based edge length ratio constraint
CN104156988A (en) * 2014-08-05 2014-11-19 陕西汇图测绘地理信息有限公司 Urban building contour regularization method based on iteration minimum bounding rectangle
CN106407947A (en) * 2016-09-29 2017-02-15 百度在线网络技术(北京)有限公司 Target object recognition method and device applied to unmanned vehicle
WO2019199083A1 (en) * 2018-04-12 2019-10-17 Samsung Electronics Co., Ltd. Method and apparatus for compressing and decompressing point clouds
CN110047133A (en) * 2019-04-16 2019-07-23 重庆大学 A kind of train boundary extraction method towards point cloud data

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
WANG, DECHENG ET AL.: "Vehicle Detection Algorithm Based on Convolutional Neural Network and RGB-D Images", LASER & OPTOELECTRONICS PROGRESS, vol. 56, no. 18, 30 September 2019 (2019-09-30), pages 119 - 126, XP055824059 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115655262A (en) * 2022-12-26 2023-01-31 广东省科学院智能制造研究所 Deep learning perception-based multi-level semantic map construction method and device
CN116011107A (en) * 2023-01-10 2023-04-25 南京航空航天大学 Method, device and system for extracting hole characteristics of large composite material component

Also Published As

Publication number Publication date
CN113034539A (en) 2021-06-25
CN113034539B (en) 2024-05-07

Similar Documents

Publication Publication Date Title
WO2021129483A1 (en) Method for determining point cloud bounding box, and apparatus
CN111045024B (en) Vehicle tracking method and system based on light detection and ranging
CN111612841B (en) Target positioning method and device, mobile robot and readable storage medium
CN112513679B (en) Target identification method and device
US20190353478A1 (en) System and method for angle measurement
CN110782465B (en) Ground segmentation method and device based on laser radar and storage medium
US10878580B2 (en) Point cluster refinement processing of image data for LiDAR-based vehicle tracking system and method
US20200090339A1 (en) Method and Apparatus for Representing Environmental Elements, System, and Vehicle/Robot
WO2021217518A1 (en) Radar point cloud clustering method and apparatus
WO2020259506A1 (en) Method and device for determining distortion parameters of camera
CN112700552A (en) Three-dimensional object detection method, three-dimensional object detection device, electronic apparatus, and medium
US8744752B2 (en) Apparatus and method for detecting locations of vehicle and obstacle
CN111045023A (en) Vehicle tracking method and system based on light detection and distance measurement
WO2023185250A1 (en) Obstacle distance measurement method, mobile robot, device and medium
CN113569958B (en) Laser point cloud data clustering method, device, equipment and medium
CN114488099A (en) Laser radar coefficient calibration method and device, electronic equipment and storage medium
CN112799091A (en) Algorithm evaluation method, device and storage medium
WO2021218346A1 (en) Clustering method and device
EP4123337A1 (en) Target detection method and apparatus
WO2020198973A1 (en) Method for using microwave radar to detect stationary object near to barrier, and millimeter-wave radar
CN109362036A (en) A kind of multi-modal indoor orientation method combined based on image with WIFI
US11978158B2 (en) Determining minimum region for finding planar surfaces
WO2021218347A1 (en) Clustering method and apparatus
CN109061562B (en) Object positioning method and device based on internal parameters of positioning chip and electronic equipment
CN111669698B (en) Positioning method, device, system and storage medium

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20907578

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20907578

Country of ref document: EP

Kind code of ref document: A1