CN115601433B - Loop detection method, computer device, computer-readable storage medium and vehicle - Google Patents

Loop detection method, computer device, computer-readable storage medium and vehicle Download PDF

Info

Publication number
CN115601433B
CN115601433B CN202211587274.6A CN202211587274A CN115601433B CN 115601433 B CN115601433 B CN 115601433B CN 202211587274 A CN202211587274 A CN 202211587274A CN 115601433 B CN115601433 B CN 115601433B
Authority
CN
China
Prior art keywords
map
point cloud
ndt
cloud data
data frame
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
CN202211587274.6A
Other languages
Chinese (zh)
Other versions
CN115601433A (en
Inventor
白昕晖
孙立
袁弘渊
任少卿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Anhui Weilai Zhijia Technology Co Ltd
Original Assignee
Anhui Weilai Zhijia Technology Co Ltd
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 Anhui Weilai Zhijia Technology Co Ltd filed Critical Anhui Weilai Zhijia Technology Co Ltd
Priority to CN202211587274.6A priority Critical patent/CN115601433B/en
Publication of CN115601433A publication Critical patent/CN115601433A/en
Application granted granted Critical
Publication of CN115601433B publication Critical patent/CN115601433B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S7/00Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
    • G01S7/48Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
    • G01S7/4802Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00 using analysis of echo signal for target characterisation; Target signature; Target cross-section
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/64Analysis of geometric attributes of convexity or concavity
    • 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
    • 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/10032Satellite or aerial image; Remote sensing
    • G06T2207/10044Radar image

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Geometry (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Image Analysis (AREA)

Abstract

The invention relates to the technical field of automatic driving, in particular to a loop detection method, computer equipment, a computer readable storage medium and a vehicle, and aims to solve the problem of improving loop detection accuracy. The method provided by the invention comprises the steps of establishing a real-time local point cloud map according to a current point cloud data frame, and acquiring a real-time NDT geometric descriptor according to the real-time local point cloud map; acquiring a candidate loop data frame of a current point cloud data frame, acquiring a prior local NDT map matched with the candidate loop point cloud data frame from an NDT map established according to a historical point cloud data frame, and acquiring a prior NDT geometric descriptor according to the prior local NDT map; and judging whether the candidate loop point cloud data frame is a final loop point cloud data frame or not according to the real-time NDT geometric descriptor and the prior NDT geometric descriptor. The geometrical characteristics of the point cloud data can be fully represented through the NDT geometrical descriptor, so that the accuracy of loop detection can be remarkably improved by utilizing the NDT geometrical descriptor to perform loop detection.

Description

Loop detection method, computer device, computer-readable storage medium and vehicle
Technical Field
The invention relates to the technical field of automatic driving, in particular to a loop detection method, computer equipment, a computer readable storage medium and a vehicle.
Background
When a point cloud map or location is established by using point cloud data frames acquired by a laser radar on a vehicle, the pose of each point cloud data frame needs to be determined, and then the point cloud data frames are overlapped according to the poses to form the point cloud map or to be located. At present, when the pose of each point cloud data frame is determined, loop detection is usually performed on a current point cloud data frame to obtain a loop point cloud data frame of the current point cloud data frame, and then point cloud registration is performed on the current point cloud data frame and the loop point cloud data frame to optimize the pose of the current point cloud data frame so as to obtain an accurate pose. At present, the conventional loop detection method based on point cloud mainly utilizes a Scan Context descriptor algorithm or an Iris descriptor algorithm to obtain the data characteristics of a point cloud data frame, and then loop detection is performed according to the data characteristics. The Scan Context descriptor algorithm mainly takes the maximum height of the point cloud data as a data feature, and the maximum height cannot sufficiently represent the geometric feature of the point cloud data; the Iris descriptor algorithm mainly carries out layering on point cloud data, codes each layer according to whether the point cloud data exist in each layer or not, and then takes the codes as data characteristics. Because the descriptor algorithm cannot sufficiently represent or cannot represent the geometric features of the point cloud data, the accuracy of loop detection is reduced when the loop detection is performed by using the data features obtained by the descriptor algorithm.
Accordingly, there is a need in the art for a new solution to the above problems.
Disclosure of Invention
In order to overcome the above-mentioned drawbacks, the present invention is proposed to provide a loop detection method, a computer device, a computer-readable storage medium and a vehicle that solve, or at least partially solve, the technical problem of how to improve the accuracy of loop detection.
In a first aspect, there is provided a loop detection method, the method comprising:
establishing a real-time local point cloud map according to the current point cloud data frame;
acquiring a real-time NDT geometric descriptor according to the real-time local point cloud map;
acquiring a candidate loop point cloud data frame of a current point cloud data frame, and acquiring a prior local NDT map matched with the candidate loop point cloud data frame from an NDT map established according to a historical point cloud data frame;
acquiring a priori NDT geometric descriptor according to the priori local NDT map;
and judging whether the candidate loop point cloud data frame is a final loop point cloud data frame or not according to the real-time NDT geometric descriptor and the prior NDT geometric descriptor.
In one technical solution of the above loopback detection method, the method further includes obtaining a target descriptor according to the target local map by:
dividing a map space corresponding to the target local map into a plurality of map layers;
respectively acquiring the NDT geometric characteristics of each map layer;
acquiring the target descriptor according to the NDT geometric characteristics of each map layer;
wherein the target descriptor is the live NDT geometric descriptor when the target local map is the live local point cloud map and the prior NDT geometric descriptor when the target local map is the prior local NDT map.
In one technical solution of the above loopback detection method, "respectively obtaining the NDT geometric features of each map layer" specifically includes:
dividing a map space corresponding to the target local map into a plurality of space grids by adopting a Scan Context description sub-algorithm;
respectively acquiring the NDT geometric characteristics of each map layer in the spatial grids aiming at each spatial grid;
the step of obtaining the target descriptor according to the NDT geometric feature of each map layer specifically includes:
and acquiring the target descriptor according to the NDT geometric characteristics of each map layer in each spatial grid by adopting a Scan Context descriptor algorithm.
In one technical solution of the above loopback detection method, "respectively obtaining the NDT geometric features of each map layer" further includes:
acquiring a point cloud normal distribution parameter of the map layer based on an NDT algorithm;
acquiring a covariance matrix in the point cloud normal distribution parameters;
and acquiring the NDT geometrical characteristics of the map layer according to the covariance matrix.
In one technical solution of the above loopback detection method, "obtaining the NDT geometric feature of the map layer according to the covariance matrix" specifically includes:
carrying out eigenvalue decomposition on the covariance matrix of the map layer to obtain an eigenvalue;
and acquiring the NDT geometric characteristics of the map layer according to the characteristic value.
In one technical solution of the above loopback detection method, the feature value of the map layer is composed of feature value components belonging to dimensions of an X axis, a Y axis, and a Z axis of a map coordinate system, and the step of "obtaining the NDT geometric feature of the map layer according to the feature value" specifically includes:
comparing the characteristic value components of the X-axis, Y-axis and Z-axis dimensions of the map layers;
determining the map shape of the map layer according to the comparison result;
and acquiring the NDT geometric features of the map layer according to the map shape.
In one technical solution of the above loopback detection method, "comparing the eigenvalue components of the X-axis, Y-axis and Z-axis dimensions of the map layer" specifically includes:
acquiring a linear shape value according to the ratio of the characteristic value components of the Z-axis dimension and the Y-axis dimension;
acquiring a plane shape value according to the ratio of the Y-axis dimension to the characteristic value component of the X-axis dimension;
comparing the straight shape value with the plane shape value.
In one embodiment of the loop detection method, the step of "comparing the straight line shape value with the plane shape value" specifically includes:
obtaining a map shape value according to the ratio of the straight line shape value to the plane shape value;
comparing the map shape value with a preset shape threshold value, wherein the preset shape threshold value comprises a threshold upper value and a threshold lower value;
the step of determining the map shape of the map layer according to the comparison result specifically includes:
if the map shape value is smaller than the threshold lower limit value, the map shape is a plane;
if the map shape value is larger than the threshold upper limit value, the map shape is a straight line;
and if the map shape value is greater than or equal to the lower threshold value and less than or equal to the upper threshold value, the map shape is an ellipsoid.
In one technical solution of the above loopback detection method, "obtaining the NDT geometric feature of the map layer according to the map shape" specifically includes:
coding the map shape to obtain a shape code;
and taking the shape code as the NDT geometric feature of the map layer.
In one technical solution of the above loopback detection method, "obtaining the target descriptor according to the NDT geometric feature of each map layer" further includes:
constructing a shape vector according to the NDT geometric characteristics of each map layer;
and acquiring the target descriptor according to the shape vector.
In one technical solution of the above loopback detection method, "judging whether the candidate loopback point cloud data frame is a final loopback point cloud data frame according to the real-time NDT geometric descriptor and the prior NDT geometric descriptor" specifically includes:
determining whether the real-time NDT geometric descriptor is similar to the prior NDT geometric descriptor;
if the candidate looped point cloud data frames are similar to each other, the candidate looped point cloud data frames are final looped point cloud data frames;
and if not, the candidate loop point cloud data frame is not the final loop point cloud data frame.
In one technical solution of the above loopback detection method, "judging whether the candidate loopback point cloud data frame is a final loopback point cloud data frame according to the real-time NDT geometric descriptor and the prior NDT geometric descriptor" specifically includes:
determining whether the real-time NDT geometric descriptor is similar to the prior NDT geometric descriptor;
if the candidate looped point cloud data frames are similar to the final looped point cloud data frame, the candidate looped point cloud data frame is the final looped point cloud data frame;
and if not, the candidate loop point cloud data frame is not the final loop point cloud data frame.
In one embodiment of the above loopback detection method, before the step of "obtaining a real-time NDT geometric descriptor according to the real-time local point cloud map", the method further includes:
acquiring a historical point cloud data frame for loop detection at the last time;
judging whether the distance between the current point cloud data frame and the historical point cloud data frame is larger than a preset distance threshold value or not;
if yes, performing loop detection on the current point cloud data frame, and continuing to execute the step of acquiring a real-time NDT geometric descriptor according to the real-time local point cloud map;
and if not, not performing loop detection on the current point cloud data frame, and not performing the step of acquiring a real-time NDT geometric descriptor according to the real-time local point cloud map.
In a second aspect, there is provided a computer device comprising a processor and a storage means adapted to store a plurality of program codes, the program codes being adapted to be loaded and run by the processor to perform the loop detection method according to any of the above-mentioned aspects of the loop detection method.
In a third aspect, a computer readable storage medium is provided, having stored therein a plurality of program codes adapted to be loaded and run by a processor to perform the loop detection method according to any one of the above-mentioned aspects of the loop detection method.
In a fourth aspect, a vehicle is provided, comprising a computer device according to the above computer device solution.
One or more technical schemes of the invention at least have one or more of the following beneficial effects:
in the technical scheme of implementing the loop detection method provided by the invention, a real-time local point cloud map can be established according to the current point cloud data frame, and a real-time NDT geometric descriptor is obtained according to the real-time local point cloud map; acquiring a candidate loop point cloud data frame of a current point cloud data frame, acquiring a prior local NDT map matched with the candidate loop point cloud data frame from an NDT map established according to a historical point cloud data frame, and acquiring a prior NDT geometric descriptor according to the prior local NDT map; and finally, judging whether the candidate loop point cloud data frame is a final loop point cloud data frame or not according to the real-time NDT geometric descriptor and the prior NDT geometric descriptor.
The point cloud Normal distribution parameters of the local point cloud/NDT map can be obtained based on an NDT (Normal distribution Transform) algorithm, and can sufficiently represent the geometric characteristics of point cloud data, so that loop detection is performed according to real-time and prior NDT geometric descriptors, and the accuracy of loop detection can be remarkably improved. In addition, the data space occupied by the point cloud normal distribution parameters obtained by the NDT algorithm is far smaller than the data space occupied by the point cloud data, so that the calculation resources consumed can be greatly reduced, and the loop detection efficiency is improved.
Further, in the technical solution for implementing the loop detection method provided by the present invention, when a real-time or prior NDT geometric descriptor (hereinafter referred to as a target descriptor) is obtained, a map space corresponding to a real-time local point cloud map and a prior local NDT map (hereinafter referred to as a target local map) may be respectively divided into a plurality of map layers, then an NDT geometric feature of each map layer is respectively obtained, and finally the target descriptor is obtained according to the NDT geometric feature of each map layer.
The target descriptor obtained in this way can represent the geometric features of the point cloud data on layers with different heights (namely the geometric features of different map layers), and the geometric description capability of the target descriptor is further improved, so that the accuracy of loopback detection can be further improved.
Further, in the technical scheme for implementing the loop detection method provided by the invention, when the NDT geometric features of the map layer are obtained, the map shape of the map layer can be obtained according to the feature value obtained by performing feature value decomposition on the point cloud normal distribution parameters, and the NDT geometric features can be obtained according to the map shape, so that the geometric description capability of the target descriptor can be further improved on the basis, and the accuracy of loop detection can be further improved.
Drawings
The disclosure of the present invention will become more readily understood with reference to the accompanying drawings. As is readily understood by those skilled in the art: these drawings are for illustrative purposes only and are not intended to constitute a limitation on the scope of the present invention. Wherein:
FIG. 1 is a schematic flow chart of the main steps of a loop detection method according to one embodiment of the present invention;
FIG. 2 is a flow diagram illustrating the main steps of a method for obtaining a real-time or a priori NDT geometric descriptor in accordance with one embodiment of the present invention;
FIG. 3 is a schematic illustration of a plurality of map layers according to an embodiment of the invention;
FIG. 4 is a flowchart illustrating the main steps of a method for obtaining NDT geometric features of a map layer according to an embodiment of the present invention;
FIG. 5 is a schematic diagram of a plan map shape according to one embodiment of the present invention;
FIG. 6 is a schematic diagram of a rectilinear map shape, according to one embodiment of the present invention;
fig. 7 is a main configuration diagram of a computer apparatus according to an embodiment of the present invention.
Detailed Description
Some embodiments of the invention are described below with reference to the accompanying drawings. It should be understood by those skilled in the art that these embodiments are only for explaining the technical principle of the present invention, and are not intended to limit the scope of the present invention.
In the description of the present invention, a "processor" may include hardware, software, or a combination of both. The processor may be a central processing unit, microprocessor, image processor, digital signal processor, or any other suitable processor. The processor has data and/or signal processing functionality. The processor may be implemented in software, hardware, or a combination thereof. The computer readable storage medium includes any suitable medium that can store program code, such as magnetic disks, hard disks, optical disks, flash memory, read-only memory, random-access memory, and the like.
The following describes embodiments of the loop detection method provided by the present invention.
Referring to fig. 1, fig. 1 is a flow chart illustrating the main steps of a loopback detection method according to an embodiment of the present invention. As shown in fig. 1, the loop detection method in the embodiment of the present invention mainly includes the following steps S101 to S105.
Step S101: and establishing a real-time local point cloud map according to the current point cloud data frame.
The point cloud data frame may be a point cloud data frame acquired by a laser radar on the vehicle during the driving of the vehicle. After the current point cloud data frame is acquired, point cloud registration can be carried out on the current point cloud data frame and the historical local point cloud map to obtain a relative pose between the current point cloud data frame and the historical local point cloud map, and then the current point cloud data frame is superposed on the historical local point cloud map according to the relative pose to obtain a new local point cloud map, namely a real-time local point cloud map. In the embodiment of the invention, a conventional point cloud registration method in the technical field of automatic driving can be adopted to perform point cloud registration on the current point cloud data frame and the historical local point cloud map, and the point cloud registration is not specifically limited herein.
Step S102: and acquiring a real-time NDT geometric descriptor according to the real-time local point cloud map. Specifically, an NDT algorithm may be adopted to obtain a point cloud normal distribution parameter of the real-time local point cloud map, and then a real-time NDT geometric descriptor is obtained according to the point cloud normal distribution parameter.
The point cloud normal distribution parameters refer to parameters capable of determining a normal distribution function of the point cloud, and may include a mean value, a covariance matrix, and the like of point cloud coordinates.
Step S103: and acquiring a candidate loop point cloud data frame of the current point cloud data frame, and acquiring a prior local NDT map matched with the candidate loop point cloud data frame from the NDT map established according to the historical point cloud data frame.
In the embodiment of the invention, the candidate loopback point cloud data frame can be selected from the historical point cloud data frame according to the pose of the current point cloud data frame. For example, in the embodiment of the present invention, a loop detection method that is conventional in the field of automatic driving technology may be adopted, a loop cloud data frame is selected from a historical point cloud data frame according to the pose of a current point cloud data frame, and then this loop point cloud data frame is used as a candidate loop point cloud data frame. That is to say, the loop detection method provided by the invention is to perform loop check on the candidate loop point cloud data and judge whether the candidate loop point cloud data is the final loop point cloud data frame of the current point cloud data frame. In addition, in the embodiment of the present invention, a conventional NDT (Normal distribution Transform) algorithm in the technical field of point cloud mapping may also be adopted, and an NDT map is built according to the historical point cloud data frame. Further, according to the pose and other information of the candidate looped-back point cloud data frame, a conventional method in the NDT technical field can be adopted in the embodiment of the invention to obtain a local map (namely an NDT sub-map) matched with the candidate looped-back point cloud data frame from the established NDT map as a prior local NDT map.
Step S104: and acquiring a priori NDT geometric descriptor according to the priori local NDT map.
When the NDT map is built by adopting the NDT algorithm, a point cloud probability distribution map of the NDT map is built, the point cloud probability distribution map comprises a point cloud normal distribution parameter, and the point cloud normal distribution parameter has the same meaning as the point cloud normal distribution parameter in the step S102. Therefore, after the prior local NDT map is obtained, point cloud normal distribution parameters corresponding to the prior local NDT map can be obtained from the point cloud probability distribution map, and then the prior NDT geometric descriptors can be obtained according to the point cloud normal distribution parameters.
Step S105: and judging whether the candidate loop is a final loop point cloud data frame or not according to the real-time NDT geometric descriptor and the prior NDT geometric descriptor.
Specifically, if the real-time NDT geometric descriptor is the same as the prior NDT geometric descriptor, the candidate loopback point cloud data frame is a final loopback point cloud data frame; otherwise, the candidate looped-point cloud data frame is not the final looped-point cloud data frame. In practical application, because noise usually exists in the process of acquiring point cloud data frames, two point cloud data frames which are completely the same may not be obtained, and for this reason, in order to accurately obtain a final loop point cloud data frame, in some embodiments, whether a real-time NDT geometric descriptor is similar to a priori NDT geometric descriptor may be judged; if the candidate loopback point cloud data frames are similar to each other, the candidate loopback point cloud data frames can be judged to be final loopback point cloud data frames; otherwise, the candidate looped-point cloud data frame is not the final looped-point cloud data frame. In this embodiment, a conventional similarity calculation method in the technical field of point cloud data processing may be adopted to calculate the similarity between the real-time NDT geometric descriptor and the prior NDT geometric descriptor, and then determine whether the two are similar according to the magnitude of the similarity.
The real-time NDT geometric descriptor and the prior NDT geometric descriptor are obtained according to the point cloud normal distribution parameters, and the point cloud normal distribution parameters can accurately describe the distribution condition of the point cloud data, namely accurately describe the geometric features of the point cloud data, namely the geometric features of a map.
The above steps S101 to S105 are descriptions of performing loop detection on one point cloud data frame, and for each point cloud data frame, loop detection may be performed according to the method described in the above steps S101 to S105. In practical application, large pose change does not exist between adjacent point cloud data frames generally, and loop detection is not required to be performed on each point cloud data frame in order to reduce computational stress of loop detection. In some preferred embodiments, before step S102 is executed, a historical point cloud data frame of the last loop detection may be obtained, and then it is determined whether a distance between the current point cloud data frame and the historical point cloud data frame is greater than a preset distance threshold; if yes, continuing to execute the step S102 to perform loop detection on the current point cloud data frame; otherwise, step S102 is not executed, and loop detection is not performed on the current point cloud data frame. A person skilled in the art may flexibly set a specific value of the preset distance threshold according to actual requirements, for example, the preset distance threshold may be 10 meters, which is not specifically limited in this embodiment of the present invention.
The following further describes the above step S102 and step S104.
In order to further improve the geometric description capability of the real-time or local NDT geometric descriptor, in some embodiments, the geometric features of the point cloud data on different height layers (i.e., the geometric features of different map layers) may be obtained, and then the real-time or local NDT geometric descriptor may be obtained according to the geometric features of the point cloud data on different height layers.
Since the real-time or a priori NDT geometric descriptor acquisition method is similar, for the sake of brevity, the following description will take the target local map and the target descriptor as examples. The target descriptor is a real-time NDT geometric descriptor when the target local map is a real-time local point cloud map, and the target descriptor is an a-priori NDT geometric descriptor when the target local map is an a-priori local NDT map.
Referring to fig. 2, in the embodiment of the present invention, a target descriptor may be obtained according to a target local map through the following steps S201 to S203.
Step S201: and dividing a map space corresponding to the target local map into a plurality of map layers.
A person skilled in the art may flexibly set a specific numerical value of the number of map layers according to actual requirements, which is not specifically limited in the embodiment of the present invention.
Step S202: and respectively acquiring the NDT geometric characteristics of each map layer. Specifically, the point cloud normal distribution parameter of the map layer may be used as the NDT geometric feature.
Step S203: and acquiring a target descriptor according to the NDT geometric characteristics of each map layer, wherein the target descriptor simultaneously comprises the NDT geometric characteristics of each map layer.
Further, in some embodiments, in order to improve the geometric description capability of the target descriptor, a Scan Context descriptor algorithm may be used to obtain the target descriptor according to the NDT geometric features, and specifically, in step S202, the Scan Context descriptor algorithm may be used to divide the map space corresponding to the target local map into a plurality of spatial mesh bins, and then the NDT geometric features of each map layer in the current spatial mesh bin are respectively obtained for each spatial mesh bin. In step S203, a Scan Context descriptor algorithm may be adopted to obtain a target descriptor according to the NDT geometric feature of each map layer in each spatial grid bin. For example, referring to FIG. 3, FIG. 3 illustrates a target descriptor obtained by using the Scan Context descriptor algorithm. In this embodiment, the map space corresponding to the target local map is divided into 8 map layers, so that 8 map layers are formed in each spatial grid bin of the target descriptor, each map layer corresponds to an NDT geometric feature, where Z represents a coordinate axis of the point cloud height.
It should be noted that the Scan Context descriptor algorithm is a conventional descriptor algorithm in the technical field of automatic driving, and the specific implementation method of the Scan Context descriptor algorithm is not described in detail in the embodiment of the present invention. For example, when dividing the spatial mesh bin, the map space corresponding to the target local map may be divided into a plurality of spatial mesh bins according to a preset azimuth angle and a preset radius, the map space is divided into a plurality of sectors (sectors) when viewed from the azimuth angle, the map space is divided into a plurality of Rings (Rings) when viewed from the radius direction, and a part where each Sector and each ring intersect is one spatial mesh bin. And respectively taking the maximum point cloud height in each spatial grid bin as the identifier of each spatial grid bin, wherein if a certain spatial grid bin does not contain the point cloud, the identifier of the bin is 0. When the Scan Context descriptor algorithm is adopted to obtain the target descriptor, the NDT geometric characteristics of each map layer corresponding to each spatial grid bin can be stored in each spatial grid bin.
Based on the method described in the above steps S201 to S203, the geometric description capability of the target descriptor can be further improved, so as to further improve the accuracy of the loopback detection.
The following further describes step S202 and step S203.
1. Step S202 will be explained.
As can be known from the description of the foregoing step S102, the point cloud normal distribution parameters may include a mean value and a covariance matrix of the point cloud coordinates, and the covariance matrix can reflect the distribution shape of the point cloud data better than the mean value, that is, can reflect the geometric features of the point cloud data more like the mean value. Therefore, in order to further improve the geometric description capability of the object descriptor, in some embodiments of the above step S202, the NDT geometric features of each map layer may be acquired through the following steps S2021 to S2023 shown in fig. 4.
Step S2021: and acquiring a point cloud normal distribution parameter of the map layer obtained based on the NDT algorithm. Step S2022: and acquiring a covariance matrix in the point cloud normal distribution parameters. Step S2023: and acquiring the NDT geometric characteristics of the map layer according to the covariance matrix.
Based on the method described in the above steps S2021 to S2023, the geometric description capability of the object descriptor can be further improved, so as to further improve the accuracy of the loop detection.
Step S2023 is further described below.
In order to further improve the capability of embodying the geometric characteristics of the point cloud data by using the covariance matrix and reduce the calculation force for acquiring the target descriptor according to the covariance matrix, after the covariance matrix is obtained, the covariance matrix can be subjected to eigenvalue decomposition to obtain an eigenvalue, and then the NDT geometric characteristics of the map layer are acquired according to the eigenvalue. It should be noted that, in the embodiment of the present invention, a conventional matrix eigenvalue decomposition method in the field of mathematical technology may be adopted to perform eigenvalue decomposition on the covariance matrix to obtain an eigenvalue of the covariance matrix, and the method is not described in detail in the embodiment of the present invention.
The feature values of the map layer are usually composed of feature value components belonging to X-axis, Y-axis and Z-axis dimensions of a map coordinate system, and the map shape of the map layer can be obtained by comparing the sizes of the three dimension feature value components. In this regard, in some embodiments, to further improve the geometric description capability of the target descriptor, a map shape of the map layer may be obtained, and then the NDT geometric features may be obtained according to the map shape. Specifically, in the present embodiment, the NDT geometric characteristics can be obtained through the following steps 11 to 13.
Step 11: and comparing the characteristic value components of the X-axis dimension, the Y-axis dimension and the Z-axis dimension of the map layer. Step 12: and determining the map shape of the map layer according to the comparison result. Specifically, if the eigenvalue components in the X-axis and Y-axis dimensions are relatively large and the eigenvalue components in the Z-axis dimension are relatively small, the map shape may be a plane (as shown in fig. 5). If the eigenvalue component of the X-axis dimension is larger and the eigenvalue component of the Y, Z axis dimension is smaller, then the map shape may be a straight line (as shown in fig. 6). Step 13: and acquiring the NDT geometric characteristics of the map layer according to the map shape.
The following describes the steps 11 to 13.
1. Step 11 and step 12 will be explained.
In step 11, in order to facilitate comparison of the characteristic value components, a linear shape value may be obtained according to a ratio of the characteristic value components of the Z-axis dimension and the Y-axis dimension, a planar shape value may be obtained according to a ratio of the characteristic value components of the Y-axis dimension and the X-axis dimension, and then the linear shape value and the planar shape value may be compared. In contrast, in step 12, if it is determined that the straight shape value is equal to or greater than the plane shape value, the map shape may be a straight line; if the straight shape value is determined to be smaller than the plane shape value, the map shape may be a plane.
In practical applications, the shape classification may include ellipsoids between planes and straight lines, in addition to planes and straight lines. In this regard, to improve the accuracy of the map shape, in some embodiments, whether the map shape is a plane, a straight line, or an ellipsoid may also be determined in the following manner.
Specifically, when comparing the linear shape value and the planar shape value in step 11, a map shape value may be obtained according to a ratio of the linear shape value and the planar shape value, and then the map shape value is compared with a preset shape threshold, where the preset shape threshold includes an upper threshold value and a lower threshold value. Further, in the step 12, if it is determined that the map shape value is smaller than the lower limit value of the threshold, it indicates that the plane shape value is relatively large, and thus the map shape is a plane; if the map shape value is judged to be larger than the upper limit value of the threshold value, the straight line shape value is larger, so that the map shape is a straight line; if the map shape value is judged to be greater than or equal to the lower limit value of the threshold value and less than or equal to the upper limit value of the threshold value, the map shape is indicated to be between the plane and the straight line and is an ellipsoid.
The map shape value may be shown in the following equation (1):
Figure 637091DEST_PATH_IMAGE001
(1)
the meaning of each parameter in the formula (1) is as follows:
Figure 372965DEST_PATH_IMAGE002
a value representing the shape of the map is represented,
Figure 165341DEST_PATH_IMAGE003
Figure 303061DEST_PATH_IMAGE004
and
Figure 640633DEST_PATH_IMAGE005
representing eigenvalue components of the X-axis, Y-axis and Z-axis dimensions, respectively.
It should be noted that, a person skilled in the art can flexibly set specific values of the upper threshold and the lower threshold according to actual requirements, as long as whether the map shape is a plane, a straight line, or an ellipsoid can be distinguished according to the upper threshold and the lower threshold.
2. Step 13 will be explained.
In some embodiments, after the map shape is obtained, the map shape may be encoded to obtain a shape code, and then the shape code is used as the NDT geometric feature of the map layer. Based on the mode, when the loop detection method provided by the invention is executed by a computer or other equipment, the computer or other equipment can be favorable for executing operations such as similarity calculation and the like on the target descriptor.
2. Step S203 will be explained.
As can be seen from step 13, in some embodiments, the map shape may be encoded to obtain a shape code, and the shape code is used as the NDT geometric feature of the map layer. In contrast, when the target descriptor is obtained according to the NDT geometric features of each map layer, a shape vector may be constructed according to the NDT geometric features of each map layer, and then the target descriptor is obtained according to the shape vector, that is, the NDT geometric features are described in a vector form, which is more beneficial for a computer or other equipment to perform operations such as similarity calculation on the target descriptor. In some preferred embodiments, the shape vector shown in the following formula (2) may be constructed according to shape coding of the map layer.
Figure 863804DEST_PATH_IMAGE006
(2)
The meaning of each parameter in the formula (2) is as follows:
Figure 194291DEST_PATH_IMAGE007
a shape vector is represented by a vector of shapes,
Figure 186518DEST_PATH_IMAGE008
is to show to
Figure 459105DEST_PATH_IMAGE009
The shape-coding of the individual map layers,
Figure 903993DEST_PATH_IMAGE010
representing the total number of map layers. According to the descriptions from the foregoing step S201 to step S203, the Scan Context descriptor algorithm can be used to obtainThe object descriptor, in this case each spatial bin, may also have stored therein a respective corresponding shape vector.
This is the description of step S202 and step S203.
It should be noted that, although the foregoing embodiments describe each step in a specific sequence, those skilled in the art will understand that, in order to achieve the effect of the present invention, different steps do not necessarily need to be executed in such a sequence, and they may be executed simultaneously (in parallel) or in other sequences, and these changes are all within the protection scope of the present invention.
It will be understood by those skilled in the art that all or part of the flow of the method according to the above-described embodiment may be implemented by a computer program, which may be stored in a computer-readable storage medium and used to implement the steps of the above-described embodiments of the method when the computer program is executed by a processor. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The computer-readable storage medium may include: any entity or device capable of carrying said computer program code, media, usb disk, removable hard disk, magnetic diskette, optical disk, computer memory, read-only memory, random access memory, electrical carrier wave signals, telecommunication signals, software distribution media, etc. It should be noted that the computer-readable storage medium may contain content that is subject to appropriate increase or decrease as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, computer-readable storage media may not include electrical carrier signals and telecommunications signals in accordance with legislation and patent practice.
Furthermore, the invention also provides computer equipment.
Referring to fig. 7, fig. 7 is a schematic diagram of the main structure of an embodiment of a computer apparatus according to the present invention. As shown in fig. 7, the computer device in the embodiment of the present invention mainly includes a storage device and a processor, the storage device may be configured to store a program for executing the loop back detection method of the above-mentioned method embodiment, and the processor may be configured to execute the program in the storage device, where the program includes, but is not limited to, a program for executing the loop back detection method of the above-mentioned method embodiment. For convenience of explanation, only the parts related to the embodiments of the present invention are shown, and details of the specific techniques are not disclosed.
The computer device in the embodiment of the present invention may be a control apparatus device formed including various electronic devices. In some possible implementations, a computer device may include multiple storage devices and multiple processors. The program for executing the loop back detection method of the above method embodiment may be divided into a plurality of subroutines, each of which may be loaded and executed by a processor to perform different steps of the loop back detection method of the above method embodiment. Specifically, each piece of sub program may be stored in a different storage device, and each processor may be configured to execute programs in one or more storage devices to implement the loop back detection method of the above method embodiment together, that is, each processor executes different steps of the loop back detection method of the above method embodiment to implement the loop back detection method of the above method embodiment together.
The multiple processors may be processors disposed on the same device, for example, the computer device may be a high-performance device composed of multiple processors, and the multiple processors may be processors configured on the high-performance device. Further, the plurality of processors may be processors disposed on different devices.
Further, the invention also provides a computer readable storage medium.
In an embodiment of a computer-readable storage medium according to the present invention, the computer-readable storage medium may be configured to store a program for executing the loop back detection method of the above-described method embodiment, which may be loaded and executed by a processor to implement the above-described loop back detection method. For convenience of explanation, only the parts related to the embodiments of the present invention are shown, and specific technical details are not disclosed. The computer readable storage medium may be a storage device formed by including various electronic devices, and optionally, the computer readable storage medium is a non-transitory computer readable storage medium in the embodiment of the present invention.
Further, the invention also provides a vehicle. In an embodiment of a vehicle according to the invention, the vehicle may comprise a computer device as described above in the embodiments of the computer device. The vehicle may be an autonomous vehicle, an unmanned vehicle, or the like in the present embodiment. In addition, according to the power source type, the vehicle in the embodiment may be a fuel vehicle, an electric vehicle, a hybrid vehicle in which electric energy is mixed with fuel, or a vehicle using other new energy, and the like.
So far, the technical solution of the present invention has been described with reference to one embodiment shown in the drawings, but it is easily understood by those skilled in the art that the scope of the present invention is obviously not limited to these specific embodiments. Equivalent changes or substitutions of related technical features can be made by those skilled in the art without departing from the principle of the invention, and the technical scheme after the changes or substitutions can fall into the protection scope of the invention.

Claims (14)

1. A loop back detection method, the method comprising:
establishing a real-time local point cloud map according to the current point cloud data frame;
acquiring a real-time NDT geometric descriptor according to the real-time local point cloud map;
acquiring a candidate loop point cloud data frame of the current point cloud data frame from the historical point cloud data frame according to the pose of the current point cloud data frame, and acquiring a prior local NDT map matched with the candidate loop point cloud data frame from an NDT map established according to the historical point cloud data frame;
acquiring a priori NDT geometric descriptor according to the priori local NDT map;
judging whether the candidate loop point cloud data frame is a final loop point cloud data frame or not according to the real-time NDT geometric descriptor and the prior NDT geometric descriptor;
the method further comprises the following steps of obtaining a target descriptor according to the target local map: dividing a map space corresponding to the target local map into a plurality of space grids by adopting a Scan Context description sub-algorithm; respectively acquiring NDT geometric characteristics of the spatial grids aiming at each spatial grid; acquiring the target descriptor according to the NDT geometric characteristics of each spatial grid by adopting a Scan Context descriptor algorithm; wherein the target descriptor is the live NDT geometric descriptor when the target local map is the live local point cloud map and the prior NDT geometric descriptor when the target local map is the prior local NDT map.
2. The loopback detection method as recited in claim 1, the method further comprising obtaining a target descriptor from a target local map by:
dividing a map space corresponding to the target local map into a plurality of map layers;
respectively acquiring the NDT geometric characteristics of each map layer in the spatial grid aiming at each spatial grid;
and acquiring the target descriptor according to the NDT geometric characteristics of each map layer in each spatial grid by adopting a Scan Context descriptor algorithm.
3. The method according to claim 2, wherein the step of separately obtaining the NDT geometric features of each map layer in the spatial grid further comprises:
acquiring a point cloud normal distribution parameter of the map layer based on an NDT algorithm;
acquiring a covariance matrix in the point cloud normal distribution parameters;
and acquiring the NDT geometrical characteristics of the map layer according to the covariance matrix.
4. The loop back detection method according to claim 3, wherein the step of obtaining the NDT geometric feature of the map layer according to the covariance matrix specifically comprises:
carrying out eigenvalue decomposition on the covariance matrix of the map layer to obtain an eigenvalue;
and acquiring the NDT geometric characteristics of the map layer according to the characteristic value.
5. The method according to claim 4, wherein the feature values of the map layer are composed of feature value components belonging to X-axis, Y-axis and Z-axis dimensions of a map coordinate system, and the step of obtaining the NDT geometric features of the map layer according to the feature values specifically comprises:
comparing the characteristic value components of the X-axis dimension, the Y-axis dimension and the Z-axis dimension of the map layer;
determining the map shape of the map layer according to the comparison result;
and acquiring the NDT geometric features of the map layer according to the map shape.
6. The method according to claim 5, wherein the step of comparing the eigenvalue components of the X-axis, Y-axis and Z-axis dimensions of the map layer specifically comprises:
acquiring a linear shape value according to the ratio of the characteristic value components of the Z-axis dimension and the Y-axis dimension;
acquiring a plane shape value according to the ratio of the characteristic value components of the Y-axis dimension and the X-axis dimension;
comparing the straight shape value with the plane shape value.
7. The loop back detection method according to claim 6, wherein the step of comparing the straight line shape value with the plane shape value specifically comprises:
obtaining a map shape value according to the ratio of the straight line shape value to the plane shape value;
comparing the map shape value with a preset shape threshold value, wherein the preset shape threshold value comprises a threshold upper value and a threshold lower value;
the step of determining the map shape of the map layer according to the comparison result specifically includes:
if the map shape value is smaller than the threshold lower limit value, the map shape is a plane;
if the map shape value is greater than the threshold upper limit value, the map shape is a straight line;
and if the map shape value is greater than or equal to the lower threshold value and less than or equal to the upper threshold value, the map shape is an ellipsoid.
8. The method according to claim 5, wherein the step of obtaining the NDT geometric features of the map layer according to the map shape specifically comprises:
coding the map shape to obtain a shape code;
and taking the shape code as the NDT geometric feature of the map layer.
9. The loopback detection method as recited in claim 8, wherein the step of obtaining said target descriptor according to the NDT geometry of each of said map layers further comprises:
constructing a shape vector according to the NDT geometric characteristics of each map layer;
and acquiring the target descriptor according to the shape vector.
10. The loopback detection method as recited in claim 1, wherein the step of determining whether the candidate loopback point cloud data frame is a final loopback point cloud data frame according to the real-time NDT geometric descriptor and the prior NDT geometric descriptor specifically comprises:
determining whether the real-time NDT geometric descriptor is similar to the prior NDT geometric descriptor;
if the candidate looped point cloud data frames are similar to the final looped point cloud data frame, the candidate looped point cloud data frame is the final looped point cloud data frame;
and if not, the candidate loop point cloud data frame is not the final loop point cloud data frame.
11. The loopback detection method as recited in claim 1, wherein prior to the step of obtaining a real-time NDT geometric descriptor from the real-time local point cloud map, the method further comprises:
acquiring a historical point cloud data frame for loop detection at the last time;
judging whether the distance between the current point cloud data frame and the historical point cloud data frame is larger than a preset distance threshold value or not;
if yes, performing loop detection on the current point cloud data frame, and continuing to execute the step of acquiring a real-time NDT geometric descriptor according to the real-time local point cloud map;
and if not, not performing loop detection on the current point cloud data frame, and not performing the step of acquiring a real-time NDT geometric descriptor according to the real-time local point cloud map.
12. A computer device comprising a processor and a storage means adapted to store a plurality of program codes, characterized in that said program codes are adapted to be loaded and run by said processor to perform the loop detection method according to any of claims 1 to 11.
13. A computer readable storage medium having stored therein a plurality of program codes, characterized in that said program codes are adapted to be loaded and run by a processor to perform the loop detection method according to any one of claims 1 to 11.
14. A vehicle characterized in that it comprises a computer device according to claim 12.
CN202211587274.6A 2022-12-12 2022-12-12 Loop detection method, computer device, computer-readable storage medium and vehicle Active CN115601433B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211587274.6A CN115601433B (en) 2022-12-12 2022-12-12 Loop detection method, computer device, computer-readable storage medium and vehicle

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211587274.6A CN115601433B (en) 2022-12-12 2022-12-12 Loop detection method, computer device, computer-readable storage medium and vehicle

Publications (2)

Publication Number Publication Date
CN115601433A CN115601433A (en) 2023-01-13
CN115601433B true CN115601433B (en) 2023-03-21

Family

ID=84853632

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211587274.6A Active CN115601433B (en) 2022-12-12 2022-12-12 Loop detection method, computer device, computer-readable storage medium and vehicle

Country Status (1)

Country Link
CN (1) CN115601433B (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112362072B (en) * 2020-11-17 2023-11-14 西安恒图智源信息科技有限责任公司 High-precision point cloud map creation system and method in complex urban environment
CN113160130A (en) * 2021-03-09 2021-07-23 北京航空航天大学 Loop detection method and device and computer equipment
CN113744236B (en) * 2021-08-30 2024-05-24 阿里巴巴达摩院(杭州)科技有限公司 Loop detection method, device, storage medium and computer program product
CN114283250A (en) * 2021-12-23 2022-04-05 武汉理工大学 High-precision automatic splicing and optimizing method and system for three-dimensional point cloud map
CN115311349A (en) * 2022-08-05 2022-11-08 西南交通大学 Vehicle automatic driving auxiliary positioning fusion method and domain control system thereof

Also Published As

Publication number Publication date
CN115601433A (en) 2023-01-13

Similar Documents

Publication Publication Date Title
CN111582054B (en) Point cloud data processing method and device and obstacle detection method and device
CN115601434B (en) Loop detection method, computer device, computer-readable storage medium and vehicle
JP2019191145A (en) Identification method for charging stand, device, robot, and computer readable storage
CN111707279A (en) Matching evaluation method, medium, terminal and device of laser point cloud and map
CN111553946A (en) Method and device for removing ground point cloud and obstacle detection method and device
CN114966651A (en) Drivable region detection method, computer device, storage medium, and vehicle
CN112381026A (en) Method, system and device for detecting channel shoreline and storage medium
CN113569958A (en) Laser point cloud data clustering method, device, equipment and medium
CN115239772A (en) Ship curved plate three-dimensional point cloud registration method, system, storage medium and terminal
CN115601433B (en) Loop detection method, computer device, computer-readable storage medium and vehicle
CN113436223B (en) Point cloud data segmentation method and device, computer equipment and storage medium
EP4279947A1 (en) Drivable area detection method, computer device, storage medium, and vehicle
CN109815763A (en) Detection method, device and the storage medium of two dimensional code
WO2024007972A1 (en) Object association method, computer device, computer readable storage medium, and vehicle
CN117291840A (en) Point cloud noise filtering method, device, medium and equipment of patrol robot
CN115082891A (en) Object detection method, computer device, computer-readable storage medium, and vehicle
CN116958241A (en) Positioning accuracy determining method and device, electronic equipment and storage medium
CN116300876A (en) Multi-agent unknown environment autonomous collaborative exploration method, system, device and storage medium
CN113077473A (en) Three-dimensional laser point cloud pavement segmentation method, system, computer equipment and medium
CN116052109A (en) Point cloud characteristic acquisition method, target detection equipment, medium and vehicle
CN111696120B (en) Point cloud data segmentation method and device, electronic equipment and storage medium
Wang et al. SIRN: An iterative reasoning network for transmission lines based on scene prior knowledge
CN115984801A (en) Point cloud target detection method, computer equipment, storage medium and vehicle
CN115965925B (en) Point cloud target detection method, computer equipment, storage medium and vehicle
CN117218143B (en) Point cloud segmentation method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant