Vehicle positioning method and device and storage medium

By using lidar and high-precision maps, the target point cloud in the laser point cloud is solved, and a higher positioning accuracy is achieved.

CN120063302APending Publication Date: 2025-05-30NINGBO LOTUS ROBOTICS CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510236402.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-28
Publication Date
2025-05-30

AI Technical Summary

Technical Problem

In the case of poor satellite navigation signals, the accuracy of the actual positioning results of the vehicle in the longitudinal direction is still poor, and it is difficult for the prior art to effectively improve the longitudinal positioning accuracy.

Method used

By obtaining the reference positioning results determined by the laser point cloud collected by the lidar and at least one positioning sensor, and determining the position of the target object perpendicular to the ground from the high-precision map, the matching target point cloud is screened, the actual position of the target object is determined, and the reference positioning results are adjusted to obtain more accurate vehicle positioning results.

Benefits of technology

The longitudinal positioning accuracy of vehicle positioning results is improved, especially when the satellite navigation signal is poor or the inertial navigation positioning accuracy is insufficient.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120063302A_ABST
    Figure CN120063302A_ABST
Patent Text Reader

Abstract

The invention provides a vehicle positioning method and device and a storage medium. The method comprises the following steps: acquiring a laser point cloud collected by a laser radar for a surrounding space and a reference positioning result determined based on at least one positioning sensor, and determining a first object position of a target object vertical to the ground in the surrounding space from a high-precision map; screening a target point cloud matched with the target object from the laser point cloud, and determining a second object position of the target object based on the target point cloud; determining a longitudinal deviation of the reference positioning result according to the first object position and the second object position, and adjusting the reference positioning result based on the longitudinal deviation to obtain an actual positioning result of the vehicle; according to the method, the positioning precision of an actual positioning result is improved, and particularly the positioning precision of the actual positioning result in the longitudinal direction is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] One or more embodiments of the present application relate to the technical field of positioning, and in particular, to a vehicle positioning method, device, and storage medium. Background Art

[0002] With the continuous development of autonomous driving technology, the requirement for positioning accuracy is getting higher and higher. To improve the positioning accuracy, generally, the positioning results of multiple types of positioning sensors are obtained, and the positioning results of the multiple types of positioning sensors are fused to obtain a fused positioning result, and the fused positioning result is used as the actual positioning result of the vehicle. For example, a navigation positioning result, an inertial navigation positioning result, and a lidar positioning result are obtained, and the navigation positioning result, the inertial navigation positioning result, and the lidar positioning result are fused to obtain a fused positioning result, and the fused positioning result is used as the actual positioning result of the vehicle.

[0003] However, the navigation positioning result depends on the received satellite navigation signal. When the vehicle is in a position blocked by an overpass, under a tree, in a canyon, etc., the satellite navigation signal is poor, resulting in a poor accuracy of the determined navigation positioning result. The inertial navigation positioning result is obtained by time integration of information such as the acceleration and angular velocity of the vehicle, and can only ensure the accuracy of the positioning result in a short time. The lidar positioning result is obtained by registering the lane line point cloud with the lane line in the high-precision map. Therefore, the lateral positioning accuracy of the lidar positioning result is high, while the longitudinal positioning accuracy is poor. It can be seen that when the satellite navigation signal is poor, even if the navigation positioning result, the inertial navigation positioning result, and the lidar positioning result are fused, the accuracy of the obtained actual positioning result in the longitudinal direction is still poor. Summary of the Invention

[0004] The present application provides a vehicle positioning method, device, and storage medium to solve the deficiencies in the related art.

[0005] According to a first aspect of one or more embodiments of the present application, a vehicle positioning method is provided. The vehicle is equipped with a lidar and at least one positioning sensor. The method includes:

[0006] Obtain the lidar point cloud collected by the lidar for the surrounding space and the reference positioning result determined based on the at least one positioning sensor, and determine the first object position of the target object perpendicular to the ground in the surrounding space from the high-precision map;

[0007] Screen the target point cloud matching the target object from the lidar point cloud, and determine the second object position of the target object based on the target point cloud;

[0008] Determine the longitudinal deviation of the reference positioning result based on the first object position and the second object position, and adjust the reference positioning result based on the longitudinal deviation to obtain the actual positioning result of the vehicle.

[0009] According to a second aspect of one or more embodiments of the present application, there is provided an electronic device, including: a processor and a memory for storing processor-executable instructions; wherein, the processor realizes the method described in the embodiment of the first aspect as above by running the executable instructions.

[0010] According to a third aspect of one or more embodiments of the present application, there is provided a computer-readable storage medium, on which computer instructions are stored, and when the instructions are executed by a processor, the steps of the method described in the embodiment of the first aspect as above are realized.

[0011] As can be seen from the above technical solutions, in one or more embodiments of the present application, objects perpendicular to the ground usually have a high reflectivity and clear boundaries, which enables them to be easily identified from the lidar point cloud; moreover, there are many objects perpendicular to the ground on both sides of the road, such as lamp posts, traffic signs, etc. By measuring the distance between the vehicle and these objects, the longitudinal positioning result of the vehicle can be accurately determined. Based on this, combining the reference positioning result of the vehicle, the first object position of these objects in the high-precision map (i.e., their preset positions on the map), and the second object position of these objects in the real environment obtained in real time by the lidar (i.e., the actual observed positions), the reference positioning result of the vehicle can be longitudinally corrected to obtain the actual positioning result. This correction method improves the positioning accuracy of the actual positioning result, especially the longitudinal positioning accuracy of the actual positioning result.

[0012] It should be understood that the above general description and the following detailed description are only exemplary and explanatory, and cannot limit the present application. BRIEF DESCRIPTION OF THE DRAWINGS

[0013] The drawings here are incorporated into the specification and constitute a part of this specification, showing embodiments consistent with the present application, and are used together with the specification to explain the principles of the present application.

[0014] Figure 1 is a schematic flowchart of a vehicle positioning method provided by an exemplary embodiment.

[0015] Figure 2 is a schematic flowchart of a vehicle positioning method provided by an exemplary embodiment.

[0016] Figure 3 is a schematic diagram of screening target point clouds matching the rod-shaped objects provided by an exemplary embodiment.

[0017] Figure 4 It is a schematic diagram of screening target point clouds matching a plate-shaped object provided by an exemplary embodiment.

[0018] Figure 5 It is a schematic flowchart of determining target point clouds matching a rod-shaped object provided by an exemplary embodiment.

[0019] Figure 6 It is a schematic flowchart of determining target point clouds matching a plate-shaped object provided by an exemplary embodiment.

[0020] Figure 7 It is a schematic diagram of the target position of a sliding window provided by an exemplary embodiment.

[0021] Figure 8 It is a schematic diagram of vehicle positioning provided by an exemplary embodiment.

[0022] Figure 9 It is a schematic structural diagram of an electronic device shown by an exemplary embodiment.

[0023] Figure 10 It is a block diagram of a vehicle positioning device shown by an exemplary embodiment. Detailed implementation manners

[0024] Here, the exemplary embodiments will be described in detail, and the examples are shown in the drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The implementation manners described in the following exemplary embodiments do not represent all implementation manners consistent with the present application. On the contrary, they are merely examples of devices and methods consistent with some aspects of the present application as detailed in the appended claims.

[0025] It should be noted that: in other embodiments, the steps of the corresponding methods are not necessarily executed in the order shown and described in the present application. In some other embodiments, the steps included in the method may be more or less than those described in the present application. In addition, a single step described in the present application may be decomposed into multiple steps for description in other embodiments; and multiple steps described in the present application may also be combined into a single step for description in other embodiments.

[0026] The vehicle positioning method provided by the present application can be applied to any vehicle positioning scenario. The embodiments of the present application do not limit the vehicle positioning scenario, and only the following examples are used to exemplarily illustrate the vehicle positioning scenario:

[0027] For example, it is applied to a positioning scenario with poor satellite navigation signals.

[0028] When the satellite navigation signals received by the vehicle are poor (for example, the RTK signals are poor), the positioning accuracy of the vehicle's navigation positioning result will be poor. Since the actual positioning result of the vehicle mainly depends on the navigation positioning result, the positioning accuracy of the vehicle's actual positioning result will also be poor, especially in the longitudinal direction. If the method provided in the embodiments of the present application is adopted, the current positioning result of the vehicle can be longitudinally corrected to obtain the actual positioning result, and this correction method improves the positioning accuracy of the actual positioning result, especially the positioning accuracy of the actual positioning result in the longitudinal direction.

[0029] For another example, it is applied to a positioning scenario where the current positioning sensor has poor positioning accuracy in the longitudinal direction.

[0030] Due to different working principles, different types of positioning sensors have different positioning accuracies in different positioning directions. If the currently used positioning sensor has poor positioning accuracy in the longitudinal direction, the method provided in the embodiments of the present application can be adopted to longitudinally correct the positioning result determined based on the current positioning sensor to obtain the actual positioning result, and this correction method improves the positioning accuracy of the actual positioning result, especially the positioning accuracy of the actual positioning result in the longitudinal direction.

[0031] Next, one or more embodiments of the present application will be described in detail.

[0032] Figure 1 It is a flowchart of a vehicle positioning method provided for an exemplary embodiment. As Figure 1 shown, the method may include the following steps:

[0033] S101. Obtain the laser point cloud collected by the lidar for the surrounding space and the reference positioning result determined based on at least one positioning sensor, and determine the first object position of the target object perpendicular to the ground in the surrounding space from the high-precision map.

[0034] In the embodiments of the present application, the vehicle is equipped with a lidar and at least one positioning sensor. The at least one positioning sensor may be one or more of a navigation positioning sensor, an inertial navigation positioning sensor, a wheel speed meter, and an odometer, and the embodiments of the present application do not limit the at least one positioning sensor.

[0035] The lidar can scan the surrounding space to obtain the laser point cloud collected for the surrounding space. Among them, the size of the surrounding space is determined by the scanning range of the lidar and the installation position of the lidar on the vehicle. Exemplarily, when the lidar is only installed at the front of the vehicle, the surrounding space is the space in front of the vehicle; when the lidar is installed at the front left, rear left, front right, and rear right positions of the vehicle respectively, the surrounding space is the space around the vehicle.

[0036] In one embodiment, during high-speed driving of a vehicle, the laser point cloud scanned by a lidar may be distorted, which affects subsequent processing. Therefore, after obtaining the laser point cloud collected by the lidar for the surrounding space, the amount of distortion of the laser point cloud caused by vehicle movement can be calculated based on the speed and / or angular velocity of the vehicle, and the scanned laser point cloud can be compensated according to the amount of distortion to reduce or eliminate the influence of distortion.

[0037] In the embodiments of the present application, the reference positioning result determined based on at least one positioning sensor may be a positioning result determined based on any positioning sensor. For example, a navigation positioning result (such as an RTK positioning result) determined based on a navigation positioning sensor, an inertial navigation positioning result determined based on an inertial navigation positioning sensor, etc.; it may also be a positioning result determined based on multiple positioning sensors. For example, a fused positioning result obtained by fusing a navigation positioning result determined based on a navigation positioning sensor and an inertial navigation positioning result determined based on an inertial navigation positioning sensor, etc.; it may also be a positioning result obtained by further processing the positioning result determined by any positioning sensor. For example, based on the navigation positioning result determined by the navigation positioning sensor, taking this navigation positioning result as an initial value, and matching the lane lines currently visually perceived with the lane lines in the high-precision map to correct the lateral positioning error of this navigation positioning result to obtain a positioning result; another example is a dead reckoning positioning result obtained by performing dead reckoning on the inertial navigation positioning result determined based on the inertial navigation positioning sensor.

[0038] When determining the first object position of an object perpendicular to the ground in the surrounding space from the high-precision map, the size of this surrounding space may be the same as or slightly different from the surrounding space scanned by the lidar. For example, this surrounding space is smaller than the surrounding space scanned by the lidar; another example is that this surrounding space is larger than the surrounding space scanned by the lidar. The embodiments of the present application do not limit this. It should be noted that regardless of whether the sizes of the two surrounding spaces are the same, the two surrounding spaces are matched. In one embodiment, when determining the first object position of an object perpendicular to the ground in the surrounding space from the high-precision map, the search range for searching for the object in the high-precision map will be determined based on the scanning range of the lidar and the installation position of the lidar on the vehicle.

[0039] Since objects perpendicular to the ground usually have a high reflectivity and clear boundaries, which enables them to be easily identified from the laser point cloud; and there are many objects perpendicular to the ground on both sides of the road, such as lamp posts, gantries, traffic signs, etc. By measuring the distance between the vehicle and these objects, the longitudinal positioning result of the vehicle can be accurately determined. Therefore, the embodiments of the present application optimize the longitudinal positioning result of the vehicle based on the objects in the high-precision map.

[0040] In the embodiments of the present application, the first object position refers to the position of the target object in the high-precision map.

[0041] S102. Screen the target point cloud that matches the target object from the lidar point cloud, and determine the second object position of the target object based on the vehicle reference positioning result and the target point cloud.

[0042] The lidar point cloud is obtained by the lidar scanning the surrounding space. Therefore, the lidar point cloud includes the point clouds of multiple objects in the surrounding space. If all the point clouds of the objects in the lidar point cloud are comprehensively registered with the corresponding objects in the high-precision map, not only the calculation amount is large, but also the matching error is likely to occur. Therefore, the method provided in the embodiments of the present application only needs to register the target object, which not only reduces the calculation amount, but also reduces the incidence of matching errors, thereby improving the processing efficiency and positioning accuracy.

[0043] The target point cloud that matches the target object is the lidar point cloud obtained by the lidar scanning the target object. After screening out the target point cloud that matches the target object from the lidar point cloud, the relative position relationship between the target point cloud and the vehicle can be determined, that is, the relative position relationship between the target object and the vehicle can be determined. In the embodiments of the present application, the second object position of the target object is the position of the target object determined based on the vehicle reference positioning result and the relative position relationship between the target point cloud and the vehicle.

[0044] S103. Determine the longitudinal deviation of the reference positioning result according to the first object position and the second object position, and adjust the reference positioning result based on the longitudinal deviation to obtain the actual positioning result of the vehicle.

[0045] The first object position is the true position of the target object, and the second object position is the observed position determined based on the vehicle reference positioning result and the relative position relationship between the target point cloud and the vehicle; if the vehicle reference positioning result is accurate, then the first object position and the second object position refer to the same position; if the vehicle reference positioning result is inaccurate, then there will be a deviation between the positions referred to by the first object position and the second object position. Therefore, the embodiments of the present application determine the longitudinal deviation of the reference positioning result based on the first object position and the second object position.

[0046] In one embodiment, the actual positioning result of the vehicle is the final positioning result of the vehicle. In another embodiment, the actual positioning result of the vehicle refers to the positioning result used for subsequent services such as navigation and autonomous driving. The embodiments of the present application do not limit the actual positioning result of the vehicle.

[0047] As can be seen from the above technical solutions, objects perpendicular to the ground usually have a relatively high reflectivity and clear boundaries, which enables them to be easily identified from the lidar point cloud. Moreover, there are many objects perpendicular to the ground on both sides of the road, such as lamp posts and traffic signs. By measuring the distance between the vehicle and these objects, the longitudinal positioning result of the vehicle can be accurately determined. Based on this, by combining the reference positioning result of the vehicle, the first object position of these objects in the high-precision map (i.e., their preset positions on the map), and the second object position of these objects in the real environment obtained in real time by the lidar (i.e., the actual observed positions), the reference positioning result of the vehicle can be longitudinally corrected to obtain the actual positioning result. This correction method improves the positioning accuracy of the actual positioning result, especially the longitudinal positioning accuracy of the actual positioning result.

[0048] Figure 2 FIG. is a flowchart of a vehicle positioning method provided for an exemplary embodiment. As Figure 2 shown, the method may include the following steps:

[0049] S201. Obtain the lidar point cloud collected for the surrounding space and the reference positioning result determined based on at least one positioning sensor, and determine the first object position of the target object perpendicular to the ground in the surrounding space from the high-precision map.

[0050] The above step S201 is the same as the above step S101. Reference can be made to the above step S101 and will not be elaborated here one by one. Only the "determining the first object position of the target object perpendicular to the ground in the surrounding space from the high-precision map" will be further described.

[0051] In a possible implementation manner, since the method provided in the embodiments of the present application only needs to perform point cloud registration on the target object, therefore, only the relevant information of the target object may be stored in the high-precision map, and the relevant information of other objects does not need to be stored. In this way, the storage pressure of the high-precision map can be reduced. In one embodiment, the high-precision map is used to store the positions of the target objects. Determining the first object position of the target object perpendicular to the ground in the surrounding space from the high-precision map includes: determining a first area based on the reference positioning result; determining the target objects located in the first area based on the first object positions of the target objects in the high-precision map, and obtaining the first object positions of the determined target objects.

[0052] In one embodiment, in order to further reduce the storage pressure of the high-precision map, when storing the relevant information of the target object in the high-precision map, the point cloud of the target object does not need to be stored (that is, the high-precision map may not be a lidar point cloud map), and only the ID of the target object, the type of the target object, and the object position of the target object need to be stored.

[0053] S202. Determine a target area that includes the first object position based on the first object position of the target object.

[0054] If the deviation of the reference positioning result in the longitudinal positioning is 1 meter, then the total line distance between the target object and the corresponding target point cloud is 1 meter. That is, the longitudinal distance between the first object position and the second object position is 1 meter. If the deviation of the reference positioning result in the longitudinal positioning is 2 meters, then the total line distance between the target object and the corresponding target point cloud is 2 meters. That is, the longitudinal distance between the first object position and the second object position is 2 meters. Since the longitudinal deviation of the reference positioning result affects the longitudinal distance between the target object and the target point cloud, when registering the target object with the target point cloud, the search range of the target point cloud can be determined based on the estimated longitudinal deviation of the reference positioning result.

[0055] In a possible implementation, the size of the target area can be dynamically adjusted. If the longitudinal deviation of the reference positioning result has been determined once within a short period of time, the search range of the target point cloud for this time can be determined based on the previously determined longitudinal deviation. If the longitudinal deviation of the reference positioning result has not been determined within a short period of time, the search range of the target point cloud for this time can be determined based on the preset size parameters.

[0056] In an embodiment, determining a target area that includes the first object position based on the first object position of the target object includes: if there is no longitudinal deviation determined within the first time period before the current moment, determine a target area of a corresponding size that includes the first object position based on the first object position of the target object, the preset first size parameter, and the preset second size parameter, where the first size parameter indicates the horizontal and vertical dimensions of the target area, and the second size parameter indicates the longitudinal dimension of the target area; if there is a longitudinal deviation determined within the first time period before the current moment, determine a target area of a corresponding size that includes the first object position based on the first object position of the target object, the preset first size parameter, and the determined longitudinal deviation, and the determined longitudinal deviation indicates the longitudinal dimension of the target area.

[0057] It can be seen that in the above solution, when there is no reference longitudinal deviation (that is, the longitudinal deviation of the reference positioning result has not been determined within a short period of time), a second size parameter is preset, and the second size parameter can indicate a relatively large size, so that a target point cloud matching the target object can be found in the target area later. After obtaining the longitudinal deviation (that is, having a reference longitudinal deviation), the target area can be reduced based on the longitudinal deviation to reduce the situation of finding multiple target point clouds matching the target object in the target area, and the target object and the target point cloud can be registered more accurately later.

[0058] Among them, the first duration can be any duration. For example, 30 seconds, 1 minute, 2 minutes, etc. The embodiments of the present application do not limit the first duration. The first size parameter and the second size parameter can indicate any size. The embodiments of the present application do not limit the first size parameter and the second size parameter. In the embodiments of the present application, the horizontal direction refers to the direction from the left side of the vehicle to the right side of the vehicle, or from the right side of the vehicle to the left side of the vehicle; the longitudinal direction refers to the direction from the front of the vehicle to the rear of the vehicle, or from the rear of the vehicle to the front of the vehicle; the vertical direction refers to the direction perpendicular to the horizontal plane.

[0059] It should be noted that the embodiments of the present application only take the example of determining the search range of the target point cloud based on the longitudinal deviation determined within a short time for illustrative purposes. In another embodiment, without considering the timeliness of the longitudinal deviation, the search range of the target point cloud can be directly determined based on the longitudinal deviation determined last time. The embodiments of the present application do not limit this.

[0060] In another possible implementation manner, at least one positioning sensor includes a navigation positioning sensor, and the reference positioning result is the positioning result determined based on the navigation positioning sensor. The longitudinal deviation of the reference positioning result can be estimated based on the dead reckoning positioning result of the vehicle, and the search range of the target point cloud is determined based on the estimated longitudinal deviation. In one embodiment, determining a target area including the first object position based on the first object position of the target object includes: obtaining the dead reckoning positioning result of the vehicle and determining the longitudinal deviation between the dead reckoning positioning result and the reference positioning result; based on the first object position of the target object, the preset first size parameter, and the longitudinal deviation, determining a target area with a corresponding size and including the first object position, where the first size parameter indicates the horizontal size and the vertical size of the target area, and the longitudinal deviation indicates the longitudinal size of the target area. Among them, the dead reckoning positioning result is obtained by dead reckoning of the inertial navigation positioning result of the vehicle, and the inertial navigation positioning result is determined based on the inertial navigation positioning sensor installed on the vehicle.

[0061] It should be noted that this longitudinal deviation is only used to indicate the longitudinal size of the target area. Therefore, this longitudinal deviation may not be equal to the longitudinal size of the target area and may be smaller than the longitudinal size of the target area. That is to say, when the longitudinal deviation is 1 meter, the search range of the target point cloud can be 1.5 meters, 2 meters, etc.

[0062] Exemplarily, when the target object is a rod-shaped object, the target area can be as Figure 3 shown. Exemplarily, when the target object is a plate-shaped object, the target area can be as Figure 4As shown in the figure. Since rod-shaped objects such as traffic signs are usually located in mid-air, the corresponding target area can also be located in mid-air. If the height information of the plate-shaped object is not stored in the high-precision map, the height of the target area can be set based on the height of a general traffic sign. For example, the target area is in the height range of 3 meters to 10 meters from the ground.

[0063] S203. Screen the target point cloud that matches the target object from the laser point cloud corresponding to the target area.

[0064] In a possible implementation, in order to reduce the amount of data processing of the laser point cloud, after obtaining the laser point cloud collected by the lidar for the surrounding space, the laser point cloud can be filtered by region first, and then the above step S203 can be performed on the remaining laser point cloud. In one embodiment, since the target object is usually located on both sides of the road, the laser point cloud with a lateral distance greater than a certain distance on both the left and right sides of the vehicle can be filtered out; for example, the laser point cloud with a lateral distance greater than 20 meters on both the left and right sides of the vehicle is filtered out to only retain the point cloud on the current road. In another embodiment, since the target object is usually a lamp post, gantry, traffic sign, etc., the laser point cloud can also be filtered based on the height of the target object. For example, the laser point cloud with a height greater than 10m or a height less than 0.5m is filtered out.

[0065] In a possible implementation, the method of dividing the point cloud clusters can be used to quickly find the target point cloud that matches the target object from the laser point cloud corresponding to the target area. In one embodiment, screening the target point cloud that matches the target object from the laser point cloud corresponding to the target area includes: dividing the laser point cloud in the target area into at least one point cloud cluster; performing feature analysis on the at least one point cloud cluster, and determining the point cloud cluster whose features match the target object as the target point cloud.

[0066] Among them, there are various ways to divide the laser point cloud in the target area into at least one point cloud cluster. Exemplarily, clustering the laser point cloud in the target area to obtain at least one point cloud cluster. Exemplarily, dividing the target area into multiple small areas, and the laser points located in the same small area form a point cloud cluster. The embodiments of the present application do not limit the way of dividing the point cloud clusters.

[0067] Next, taking steps S2031 to S2034 as an example, when the target object is a rod perpendicular to the ground, the process of "dividing the laser point cloud in the target area into at least one point cloud cluster; performing feature analysis on at least one point cloud cluster, and determining the point cloud cluster whose features match the target object as the target point cloud" will be described exemplarily; taking steps S2035 to S2037 as an example, when the target object is a plate perpendicular to the ground, the process of "dividing the laser point cloud in the target area into at least one point cloud cluster; performing feature analysis on at least one point cloud cluster, and determining the point cloud cluster whose features match the target object as the target point cloud" will be described exemplarily.

[0068] Among them, the rod can be a lamp post, a gantry, etc., and the plate can be a traffic sign, a billboard, etc.

[0069] When the target object is a rod perpendicular to the ground, the process of "dividing the laser point cloud in the target area into at least one point cloud cluster; performing feature analysis on at least one point cloud cluster, and determining the point cloud cluster whose features match the target object as the target point cloud" is as Figure 5 shown, and includes the following steps:

[0070] S2031. Divide the horizontal plane of the target area into multiple grids, and project the laser point cloud in the target area onto each grid.

[0071] In one embodiment, when dividing the horizontal plane of the target area into multiple grids, the size of each grid can be preset in advance; based on the preset size of the grid, divide the horizontal plane of the target area into multiple grids with corresponding sizes. In another embodiment, when dividing the horizontal plane of the target area into multiple grids, the number of grids can be preset in advance; based on the number of grids, divide the horizontal plane of the target area into corresponding numbers of grids with the same size.

[0072] Exemplarily, as Figure 3 shown, divide the horizontal plane of the target area into 9 grids with the same size.

[0073] S2032. Perform clustering processing on the laser point cloud in each grid respectively to obtain at least one point cloud cluster.

[0074] In the embodiments of the present application, any clustering algorithm can be used to perform clustering processing on the laser point cloud in each grid, and the embodiments of the present application do not limit this. Exemplarily, the clustering algorithm used can be DBSCAN (Density-Based Spatial Clustering of Applications with Noise, density-based spatial clustering algorithm), K-Means (K-means clustering), etc.

[0075] S2033. Obtain the direction vectors of each point cloud cluster by performing feature analysis on each point cloud cluster in at least one point cloud cluster.

[0076] In the embodiments of the present application, the PCA (Principal Component Analysis) method can be used to perform feature analysis on each point cloud cluster; the method of fitting a straight line or a plane by the least squares method can also be used to perform feature analysis on each point cloud cluster; the method of analyzing the normal vector can also be used to perform feature analysis on each point cloud cluster; the embodiments of the present application only exemplarily illustrate the feature analysis method and do not limit the feature analysis method.

[0077] In a possible implementation, PCA is used to perform feature analysis on each point cloud cluster. Exemplarily, for any point cloud cluster, perform PCA operation:

[0078] (1) Calculate the coordinate mean of multiple laser points in the point cloud cluster, and the coordinate mean is where k is the number of laser points, and p j is the coordinate of the j-th laser point. Among them, 1 ≤ j ≤ k.

[0079] (2) Calculate the covariance matrix of the point cloud cluster, and the covariance matrix is

[0080] (3) Perform eigenvalue decomposition on the covariance matrix to obtain three eigenvalues and the eigenvectors corresponding to these three eigenvalues respectively, and determine the eigenvector with the largest eigenvalue among the three eigenvectors as the direction vector of the point cloud cluster.

[0081] S2034. If the direction vector of any point cloud cluster points in the direction perpendicular to the ground, then determine the point cloud cluster as the target point cloud.

[0082] The rod-shaped object is generally vertically upward. When the direction vector of any point cloud cluster points in the direction perpendicular to the ground, it means that the point cloud cluster is also vertically upward. Therefore, the point cloud cluster can be determined as the target point cloud. In an embodiment, if the direction vector of any point cloud cluster points in the direction perpendicular to the ground, then determining the point cloud cluster as the target point cloud includes: when the angle between the direction vector of the point cloud cluster and the direction vector perpendicular to the ground is less than the sixth threshold, determining that the direction vector of the point cloud cluster points in the direction perpendicular to the ground, and determining the point cloud cluster as the target point cloud.

[0083] In a possible implementation, to more accurately determine the target point cloud, at least one judgment condition may also be set. In one embodiment, if the direction vector of any point cloud cluster points in the direction perpendicular to the ground, the point cloud cluster is determined as the target point cloud, including: if the direction vector of any point cloud cluster points in the direction perpendicular to the ground, and the point cloud cluster meets at least one judgment condition, the point cloud cluster is determined as the target point cloud.

[0084] Wherein, the at least one judgment condition includes at least one of the following:

[0085] (1) The number of laser points in the point cloud cluster is not less than the first threshold.

[0086] Wherein, the first threshold can be any preset value, and the embodiments of the present application do not limit the first threshold. When the number of laser points in the point cloud cluster is less than the first threshold, it indicates that the number of laser points in the point cloud cluster is too small to meet the quantity characteristics of the laser point cloud scanned for the target object. Therefore, this point cloud cluster is not the target point cloud matching the target object, and this point cloud cluster can be eliminated.

[0087] (2) The point cloud cluster is a point cloud cluster with line features.

[0088] Since the rod-shaped object is slender, the target point cloud matching the rod-shaped object is also slender and has line features. Thus, the point cloud cluster with line features can be screened out from at least one point cloud cluster as the target point cloud matching the rod-shaped object.

[0089] In one embodiment, for a point cloud cluster with line features, the difference between the eigenvector with the largest eigenvalue and the eigenvector with the second largest eigenvalue among its three eigenvectors is relatively large. Therefore, the method for determining whether a point cloud cluster has line features may include: obtaining the ratio of the eigenvector with the largest eigenvalue to the eigenvector with the second largest eigenvalue among the three eigenvectors of the point cloud cluster. If the ratio is greater than the seventh threshold, it is determined that the point cloud cluster is a point cloud cluster with line features. The seventh threshold can be any preset value, and the embodiments of the present application do not limit the seventh threshold.

[0090] (3) The laser points in the point cloud cluster are evenly distributed in the vertical direction.

[0091] Since the point cloud of the rod-shaped object is usually evenly distributed in the vertical direction, to further reduce false detection, it can also be determined whether the laser points in the point cloud cluster are evenly distributed in the vertical direction. In one embodiment, the point cloud cluster is divided into several intervals in the vertical direction, and the number of laser points in each interval is counted; when the ratio of the number of intervals containing laser points to the total number of intervals is greater than the eighth threshold, the point cloud cluster is retained. Wherein, the eighth threshold can be any value, and the embodiments of the present application do not limit the eighth value.

[0092] It should be noted that when screening the target point cloud matching the target object from the laser point cloud corresponding to the target area, one target point cloud can be screened out, or multiple target point clouds can be screened out. When multiple target point clouds are screened out, the target point cloud matching the target object can be further screened out from the multiple target point clouds based on the positional relationship between other target objects and the corresponding target point clouds.

[0093] It should be noted that the embodiment of the present application does not limit the judgment timing of the above at least one judgment condition; the judgment timing of the at least one judgment condition can be after executing step S2032, or after executing step S2033, or different judgment conditions can be executed at different judgment timings, and the embodiment of the present application does not limit this.

[0094] When the target object is a plate perpendicular to the ground, the process of "dividing the laser point cloud in the target area into at least one point cloud cluster; performing feature analysis on the at least one point cloud cluster, and determining the point cloud cluster whose features match the target object as the target point cloud" is as Figure 6 shown and includes the following steps:

[0095] S2035: Divide the plane where the target object is located in the target area into multiple grids, and project the laser point cloud in the target area onto each grid.

[0096] In one embodiment, when dividing the plane where the target object is located in the target area into multiple grids, the size of each grid can be preset in advance; based on the preset size of the grid, divide the plane where the target object is located in the target area into multiple grids of corresponding sizes. In another embodiment, when dividing the plane where the target object is located in the target area into multiple grids, the number of grids can be preset in advance; based on the number of grids, divide the plane where the target object is located in the target area into corresponding numbers of grids with the same size.

[0097] Exemplarily, as Figure 7 shown, divide the plane where the target object is located in the target area into grids of 20 cm * 20 cm.

[0098] S2036: Determine the laser points projected onto the same grid as one point cloud cluster to obtain multiple point cloud clusters.

[0099] S2037: By performing feature analysis on the multiple point cloud clusters, determine the union of multiple point cloud clusters with planar features, adjacent corresponding grids, and the total size of the corresponding grids matching the size of the target object as the target point cloud.

[0100] In a possible implementation, the plane where the target object is located is traversed through a sliding window to determine the target point cloud that matches the target object. By performing feature analysis on multiple point cloud clusters, the set of multiple point cloud clusters that have planar features, where the corresponding meshes are adjacent and the total size of the corresponding meshes matches the size of the target object, is determined as the target point cloud, including: performing feature analysis on each point cloud cluster, and marking the mesh corresponding to the point cloud cluster with planar features as a valid mesh; creating a sliding window of the same size based on the planar size of the target object; traversing the plane where the target object is located in the target area based on the sliding window to determine the target position of the sliding window, where the target position of the sliding window is the position when the sliding window includes the most valid meshes; and determining the point cloud clusters in the meshes when the sliding window is at the target position as the target point cloud.

[0101] In one embodiment, the plane fitting method can be used to determine whether a point cloud cluster has planar features. Among them, performing feature analysis on each point cloud cluster and marking the mesh corresponding to the point cloud cluster with planar features as a valid mesh includes: performing plane fitting on each point cloud cluster, and if any point cloud cluster can be successfully fitted into a plane, marking the mesh corresponding to the point cloud cluster as a valid mesh.

[0102] In another embodiment, the point cloud cluster corresponding to the target object not only has planar features but also has good consistency, that is, most of the laser points in the point cloud cluster are in the same plane. Among them, performing feature analysis on each point cloud cluster and marking the mesh corresponding to the point cloud cluster with planar features as a valid mesh includes: performing plane fitting on each point cloud cluster to obtain the fitting plane corresponding to each point cloud cluster; for any point cloud cluster, counting the number of laser points in the point cloud cluster whose distance from the corresponding fitting plane is less than the second threshold; and if the ratio of the counted number to the total number of laser points in the point cloud cluster is greater than the third threshold, marking the mesh corresponding to the point cloud cluster as a valid mesh.

[0103] Among them, the second threshold and the third threshold can be any preset values, and the embodiments of the present application do not limit the second threshold and the third threshold.

[0104] In one embodiment, when determining the target point cloud from the point cloud clusters in the grids included when the sliding window is at the target position, not only the number of valid grids in the sliding window is considered, but also the proportion of the area of the valid grids in the sliding window is considered. Only when the proportion of the valid grids in the sliding window is greater than the proportion of the invalid grids, is it possible to locate the target point cloud that matches the target object. Optionally, determining the point cloud clusters in the grids included when the sliding window is at the target position as the target point cloud includes: if the ratio of the total area of the valid grids included in the sliding window to the area of the sliding window is greater than a fourth threshold when the sliding window is at the target position, then determining the point cloud clusters in the grids included when the sliding window is at the target position as the target point cloud. Wherein, the fourth threshold can be any preset value, and the embodiments of the present application do not limit the fourth threshold.

[0105] As Figure 7 shown, the total area of the valid grids in the sliding window is relatively large, and at this time, the point cloud clusters in the grids included in the sliding window are determined as the target point cloud.

[0106] S204. Determine the second object position of the target object based on the target point cloud.

[0107] Among them, the target point cloud is scanned by the lidar, and the position of the target point cloud is the position in the lidar coordinate system. The target point cloud can be transformed from the lidar coordinate system to the vehicle coordinate system based on the extrinsic parameters of the lidar to obtain the position of the target point cloud in the vehicle coordinate system, and the position of the target point cloud in the vehicle coordinate system is determined as the second object position of the target object.

[0108] In one embodiment, when determining the position of the target point cloud in the vehicle coordinate system as the second object position of the target object, the coordinate mean value of multiple laser points in the target point cloud can be determined as the second object position of the target object.

[0109] S205. Determine the longitudinal deviation of the reference positioning result according to the first object position and the second object position, and adjust the reference positioning result based on this longitudinal deviation to obtain the actual positioning result of the vehicle.

[0110] It should be noted that the first object position is determined from the high-precision map, and the second object position is determined based on the reference positioning result of the vehicle. Therefore, the first object position is the position in the world coordinate system, and the second object position is the position in the vehicle coordinate system. When determining the longitudinal deviation of the reference positioning result according to the first object position and the second object position, the first object position and the second object position can be first transformed into the same coordinate system, and then the longitudinal deviation of the reference positioning result is determined based on the first object position and the second object position in the same coordinate system. Exemplarily, the first object position is transformed from the world coordinate system to the vehicle coordinate system. Exemplarily, the second object position is transformed from the vehicle coordinate system to the world coordinate system.

[0111] In one embodiment, the first object position of the target object is the position where the centroid of the target object is located, and the second object position of the target object is the coordinate mean of the target point cloud that matches the target object. When determining the longitudinal deviation of the reference positioning result based on the first object position and the second object position, the longitudinal distance between the first object position and the second object position can be determined, and this longitudinal distance can be determined as the longitudinal deviation of the reference positioning result.

[0112] In a possible implementation, in order to avoid inaccurate longitudinal deviation determined based on a single frame of lidar point cloud, the longitudinal deviation can also be determined by combining the target point cloud detection results in multiple frames of lidar point clouds. Optionally, determining the longitudinal deviation of the reference positioning result based on the first object position and the second object position includes: obtaining the second object positions of multiple target objects determined based on multiple frames of lidar point clouds; and determining the longitudinal deviation of the reference positioning result based on the first object positions and the second object positions of the multiple target objects.

[0113] In one embodiment, after accumulating the target point cloud detection results of several frames of lidar point clouds, a local feature map can be constructed. Whenever a new target point cloud is determined from a new frame of lidar point cloud, the corresponding target object can be added to the local feature map. Then, the longitudinal deviation of the reference positioning result can be determined based on multiple target objects in the local feature map.

[0114] Among them, as Figure 8 shown, after determining the second object position of any target object based on the first frame of lidar point cloud and the reference positioning result, a local feature map is constructed based on the determined second object position of the target object. The local feature map includes the determined second object position of the target object; after constructing the local feature map, whenever a new target point cloud is determined based on a new frame of lidar point cloud, a new target object is added to the local feature map based on the determined new target point cloud and the corresponding reference positioning result, where the corresponding reference positioning result is obtained by dead reckoning based on the reference positioning result corresponding to the previous frame of lidar point cloud; determining the longitudinal deviation of the reference positioning result based on the first object position and the second object position includes: when the number of target objects in the local feature map is not less than a fifth threshold, determining the longitudinal deviation of the reference positioning result based on the second object positions of the target objects in the local feature map and the first object positions of the target objects in the high-precision map. Among them, the fifth threshold can be any preset value, and the embodiments of the present application do not limit the fifth threshold.

[0115] It should be noted that when determining the target point cloud matching the target object in a frame of lidar point cloud, multiple target point clouds may be determined to match the same target object; at this time, all of these multiple target point clouds can be retained. Subsequently, after adding multiple target objects to the local feature map based on these multiple target point clouds, the matching relationship between the previously retained multiple target point clouds and the corresponding target objects can be corrected according to the matching relationship between the target point cloud determined from the subsequent frame and the target object.

[0116] In one embodiment, after determining the target point cloud based on a new frame of lidar point cloud, it can be determined whether the target point cloud is newly determined based on the ID of the target object matching the target point cloud; if it is determined based on the ID of the target object that the target point cloud of the target object has been determined previously, then the target point cloud is not newly determined; if it is determined based on the ID of the target object that the target point cloud of the target object has not been determined previously, then the target point cloud is newly determined; and / or, it can also be determined whether the target point cloud is newly determined based on the distance traveled by the vehicle between the acquisition times of the front and rear frames of lidar point cloud; the embodiments of the present application do not limit the method for determining whether the target point cloud is newly determined based on a new frame of lidar point cloud.

[0117] In one embodiment, when adding a target object to the local feature map, only some information of the target object can be added, for example, the position of the target object, the ID of the target object, etc.; rather than drawing the target object in the local feature map.

[0118] In one embodiment, when determining the longitudinal deviation of the reference positioning result based on the second object position of the target object in the local feature map and the first object position of the target object in the high-precision map, an optimization function for the longitudinal deviation can be constructed, and the optimization function can be: where k is the number of target objects, x il is the first object position of the target object, x im is the second object position of the target object, δx is the longitudinal deviation, and w i is the weight of the i-th target object. Usually, newly detected target objects are given higher weights.

[0119] By adjusting the longitudinal deviation in the objective function, the value of the optimization function is minimized; the longitudinal deviation corresponding to the minimum value of the optimization function is the longitudinal deviation determined in step S205 above.

[0120] It should be noted that the embodiments of the present application do not limit the specific manner of adjusting the reference positioning result based on the longitudinal deviation to obtain the actual positioning result of the vehicle, and only exemplary illustrations are given by the following examples. Exemplarily, directly use the longitudinal deviation to adjust the longitudinal component in the reference positioning result, and use the adjusted reference positioning result as the actual positioning result of the vehicle. Exemplarily, input the longitudinal deviation and the reference positioning result into the Kalman filter, and the Kalman filter outputs the actual positioning result of the vehicle based on the longitudinal deviation and the reference positioning result. Exemplarily, use the longitudinal deviation to correct the reference positioning result, input the corrected reference positioning result and the positioning result determined by other positioning sensors into the Kalman filter, and the Kalman filter outputs the actual positioning result of the vehicle.

[0121] As can be seen from the above technical solutions, in one or more embodiments of the present application, objects perpendicular to the ground usually have a high reflectivity and clear boundaries, which enables them to be easily identified from the laser point cloud; moreover, there are many objects perpendicular to the ground on both sides of the road, such as lamp posts, traffic signs, etc. By measuring the distance between the vehicle and these objects, the longitudinal positioning result of the vehicle can be accurately determined. Based on this, combining the reference positioning result of the vehicle, the first object position of these objects in the high-precision map (i.e., their preset positions on the map), and the second object position of these objects in the real environment obtained in real time by the lidar (i.e., the actual observation position), the reference positioning result of the vehicle can be longitudinally corrected to obtain the actual positioning result. This correction method improves the positioning accuracy of the actual positioning result, especially the longitudinal positioning accuracy of the actual positioning result.

[0122] Moreover, in the embodiments of the present application, the high-precision map can only retain the relevant information of the target object, greatly reducing the storage pressure of the high-precision map, and reducing the calculation amount when registering the laser point cloud with the high-precision map, and also reducing the situation of registration errors, improving the registration accuracy.

[0123] Moreover, the embodiments of the present application also narrow the processing range of the laser point cloud based on the prior information of the target object in the high-precision map, improving the calculation efficiency, and also reducing the occurrence of misdetection. And in the embodiments of the present application, multiple thresholds are also used to determine the target point cloud, so that the determined target point cloud is more accurate, reducing the occurrence of misdetection.

[0124] Moreover, in order to avoid inaccurate longitudinal deviation determined based on one frame of laser point cloud, the embodiments of the present application can also combine the detection results of the target point cloud in multiple frames of laser point clouds to determine the longitudinal deviation, improving the accuracy of the longitudinal deviation.

[0125] It should be noted that: The user permission information, user information (including but not limited to user login accounts, user login passwords, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) involved in this specification are all information and data authorized by the users or fully authorized by all parties. And the collection, use and processing of relevant data need to comply with the relevant laws, regulations and standards of relevant countries and regions, and corresponding operation entrances are provided for users to choose to authorize or refuse.

[0126] Corresponding to the above method embodiments, the present application also provides an embodiment of a vehicle positioning device.

[0127] Figure 9 It is a schematic structural diagram of an electronic device shown according to an exemplary embodiment of the present application. Refer to Figure 9 , at the hardware level, the electronic device includes a processor 902, an internal bus 904, a network interface 906, a memory 908, and a non-volatile memory 910. Of course, there may also be other hardware required for other services. The processor 902 reads the corresponding computer program from the non-volatile memory 910 into the memory 908 and then runs it. Of course, in addition to the software implementation, the present application does not exclude other implementation methods, such as logical devices or a combination of software and hardware, etc. That is to say, the execution subject of the following processing flow is not limited to each logical unit, and can also be hardware or logical devices.

[0128] Figure 10 It is a block diagram of a vehicle positioning device shown according to an exemplary embodiment of the present application. Referring to Figure 10 , the device includes an acquisition unit 1002, a determination unit 1004, and an adjustment unit 1006, where:

[0129] The acquisition unit 1002 is configured to acquire the laser point cloud collected by the lidar for the surrounding space and the reference positioning result determined based on the at least one positioning sensor, and determine the first object position of the target object perpendicular to the ground in the surrounding space from the high-precision map;

[0130] The determination unit 1004 is configured to screen out the target point cloud that matches the target object from the laser point cloud, and determine the second object position of the target object based on the target point cloud;

[0131] The adjustment unit 1006 is configured to determine the longitudinal deviation of the reference positioning result according to the first object position and the second object position, and adjust the reference positioning result based on the longitudinal deviation to obtain the actual positioning result of the vehicle.

[0132] Optionally, the determination unit 1004 is configured to determine a target area including the first object position based on the first object position of the target object; and screen out target point clouds matching the target object from the laser point cloud corresponding to the target area.

[0133] Optionally, the determination unit 1004 is configured to, if there is no longitudinal deviation determined within the first duration before the current moment, determine a target area with corresponding dimensions and including the first object position based on the first object position of the target object, a preset first dimension parameter, and a preset second dimension parameter, where the first dimension parameter indicates the horizontal and vertical dimensions of the target area, and the second dimension parameter indicates the longitudinal dimension of the target area; if there is a longitudinal deviation determined within the first duration before the current moment, determine a target area with corresponding dimensions and including the first object position based on the first object position of the target object, the preset first dimension parameter, and the determined longitudinal deviation, and the determined longitudinal deviation indicates the longitudinal dimension of the target area.

[0134] Optionally, the at least one positioning sensor includes a navigation positioning sensor, and the reference positioning result is a positioning result determined based on the navigation positioning sensor; the determination unit 1004 is configured to obtain a dead reckoning positioning result of the vehicle, and determine a longitudinal deviation between the dead reckoning positioning result and the reference positioning result; and determine a target area with corresponding dimensions and including the first object position based on the first object position of the target object, a preset first dimension parameter, and the longitudinal deviation, where the first dimension parameter indicates the horizontal and vertical dimensions of the target area, and the longitudinal deviation indicates the longitudinal dimension of the target area.

[0135] Optionally, the determination unit 1004 is configured to divide the laser point cloud in the target area into at least one point cloud cluster; perform feature analysis on the at least one point cloud cluster, and determine the point cloud cluster whose feature matches the target object as the target point cloud.

[0136] Optionally, when the target object is a rod perpendicular to the ground, the determination unit 1004 is configured to obtain a direction vector of each point cloud cluster in the at least one point cloud cluster through feature analysis of each point cloud cluster; if the direction vector of any point cloud cluster points to a direction perpendicular to the ground, determine the point cloud cluster as the target point cloud.

[0137] Optionally, the determination unit 1004 is configured to, if the direction vector of any point cloud cluster points to a direction perpendicular to the ground and the point cloud cluster meets at least one judgment condition, determine the point cloud cluster as the target point cloud;

[0138] The at least one judgment condition includes at least one of the following:

[0139] The number of laser points in the point cloud cluster is not less than a first threshold;

[0140] The point cloud cluster is a point cloud cluster with a line feature;

[0141] The laser points in the point cloud cluster are evenly distributed in the vertical direction.

[0142] Optionally, the determining unit 1004 is configured to, when the target object is a rod perpendicular to the ground, divide the horizontal plane of the target area into a plurality of grids, and project the laser point cloud in the target area onto each grid; perform clustering processing on the laser point clouds in each grid respectively to obtain at least one point cloud cluster; and / or, when the target object is a plate perpendicular to the ground, divide the plane where the target object is located in the target area into a plurality of grids, and project the laser point cloud in the target area onto each grid; determine the laser points projected onto the same grid as a point cloud cluster to obtain a plurality of point cloud clusters.

[0143] Optionally, the determining unit 1004 is configured to, when the target object is a plate perpendicular to the ground, through feature analysis of the plurality of point cloud clusters, determine the set of a plurality of point cloud clusters having a planar feature, adjacent corresponding grids, and the total size of the corresponding grids matching the size of the target object as the target point cloud.

[0144] Optionally, the determining unit 1004 is configured to perform feature analysis on each point cloud cluster, and mark the grid corresponding to the point cloud cluster having a planar feature as a valid grid; create a sliding window of the same size based on the planar size of the target object; traverse the plane where the target object is located in the target area based on the sliding window to determine the target position of the sliding window, where the target position of the sliding window is the position where the sliding window includes the most valid grids; determine the point cloud cluster in the grid included when the sliding window is at the target position as the target point cloud.

[0145] Optionally, the determining unit 1004 is configured to perform feature analysis on each point cloud cluster, and mark the grid corresponding to the point cloud cluster having a planar feature as a valid grid, including: performing plane fitting on each point cloud cluster to obtain a fitting plane corresponding to each point cloud cluster respectively; for any point cloud cluster, counting the number of laser points in the point cloud cluster whose distance from the corresponding fitting plane is less than a second threshold; if the ratio of the counted number to the total number of laser points in the point cloud cluster is greater than a third threshold, then mark the grid corresponding to the point cloud cluster as a valid grid;

[0146] And / or

[0147] Optionally, the determination unit 1004 is configured to determine the point cloud cluster at the midpoint of the grid included in the sliding window when the sliding window is located at the target position as the target point cloud if the ratio of the total area of the valid grids included in the sliding window to the area of the sliding window is greater than a fourth threshold when the sliding window is located at the target position.

[0148] Optionally, the adjustment unit 1006 is configured to obtain second object positions of a plurality of target objects determined based on multiple frames of lidar point clouds; and determine a longitudinal deviation of the reference positioning result based on the first object positions and the second object positions of the plurality of target objects.

[0149] Optionally, the adjustment unit 1006 is further configured to, after determining the second object position of any target object based on the first frame of lidar point cloud and the reference positioning result, construct a local feature map based on the determined second object position of the target object, where the local feature map includes the determined second object position of the target object; after constructing the local feature map, whenever a new target point cloud is determined based on a new frame of lidar point cloud, add the new target object to the local feature map based on the determined new target point cloud and the corresponding reference positioning result, where the corresponding reference positioning result is obtained by dead reckoning based on the reference positioning result corresponding to the previous frame of lidar point cloud;

[0150] The adjustment unit 1006 is configured to determine a longitudinal deviation of the reference positioning result based on the second object positions of the target objects in the local feature map and the first object positions of the target objects in the high-precision map when the number of target objects in the local feature map is not less than a fifth threshold.

[0151] Optionally, the high-precision map is used to store positions of target objects; the acquisition unit 1002 is configured to determine a first area based on the reference positioning result; determine target objects located in the first area based on the first object positions of the target objects in the high-precision map, and acquire the first object positions of the determined target objects.

[0152] For the implementation processes of the functions and effects of each module in the above device, refer to the implementation processes of the corresponding steps in the above method for details, which will not be elaborated here.

[0153] The device or module illustrated in the above embodiments may be specifically implemented by a computer chip or an entity, or by a product with certain functions. A typical implementation device is a computer, and the specific form of the computer may be a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email transceiver device, a game console, a tablet computer, a wearable device, or a combination of any several of these devices.

[0154] In a typical configuration, a computer includes one or more processors, including a central processing unit (CPU) and a graphics processing unit (GPU), an input / output interface, a network interface, and memory. Among them, the central processing unit is used for computing simulations, and the graphics processing unit is used for outputting high-quality three-dimensional images.

[0155] Memory may include non-permanent memory in the form of computer-readable media, random access memory (RAM), and / or non-volatile memory, such as read-only memory (ROM) or flash memory (flash RAM). Memory is an example of computer-readable media.

[0156] Computer-readable media includes permanent and non-permanent, removable and non-removable media that can store information by any method or technology. The information can be computer-readable instructions, data structures, program modules, or other data. Examples of the computer's storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory, or other memory technologies, compact disc read-only memory (CD-ROM), digital versatile disc (DVD), or other optical storage, magnetic cassette tapes, disk storage, quantum memory, graphene-based storage media, or other magnetic storage devices, or any other non-transitory media that can be used to store information accessible by a computing device. As defined herein, computer-readable media does not include transitory computer-readable media, such as modulated data signals and carrier waves.

[0157] Corresponding to the foregoing embodiments of the vehicle positioning method, the present application also provides a computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, it implements the steps of any one of the foregoing xx methods.

[0158] The above are only the preferred embodiments of the present application and are not intended to limit the present application. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application shall be included within the scope of protection of the present application.

Claims

1. A vehicle positioning method, characterized in that: The vehicle is equipped with a laser radar and at least one positioning sensor, and the method includes: Acquire a laser point cloud collected by the laser radar for the surrounding space and a reference positioning result determined based on the at least one positioning sensor, and determine a first object position of a target object perpendicular to the ground in the surrounding space from a high-precision map; Selecting a target point cloud matching the target object from the laser point cloud, and determining a second object position of the target object based on the target point cloud; A longitudinal deviation of the reference positioning result is determined according to the first object position and the second object position, and the reference positioning result is adjusted based on the longitudinal deviation to obtain an actual positioning result of the vehicle.

2. The method according to claim 1, characterized in that The step of screening a target point cloud matching the target object from the laser point cloud comprises: Based on a first object position of the target object, determining a target area including the first object position; A target point cloud matching the target object is screened from the laser point cloud corresponding to the target area.

3. The method according to claim 2, characterized in that The determining, based on the first object position of the target object, a target area including the first object position, comprises: If there is no longitudinal deviation determined within a first time period before the current moment, determining a target area of ​​a corresponding size and including the first object position based on the first object position of the target object, a preset first size parameter, and a preset second size parameter, wherein the first size parameter indicates a horizontal size and a vertical size of the target area, and the second size parameter indicates a longitudinal size of the target area; If there is a longitudinal deviation determined within the first time period before the current moment, a target area of ​​corresponding size and including the first object position is determined based on the first object position of the target object, the preset first size parameter and the determined longitudinal deviation, and the determined longitudinal deviation indicates the longitudinal size of the target area.

4. The method according to claim 2, characterized in that: The at least one positioning sensor comprises a navigation positioning sensor, and the reference positioning result is a positioning result determined based on the navigation positioning sensor; The determining, based on the first object position of the target object, a target area including the first object position, comprises: Obtaining a dead reckoning positioning result of the vehicle, and determining a longitudinal deviation between the dead reckoning positioning result and the reference positioning result; Based on the first object position of the target object, a preset first size parameter and the longitudinal deviation, a target area of ​​corresponding size and including the first object position is determined, the first size parameter indicates the lateral size and vertical size of the target area, and the longitudinal deviation indicates the longitudinal size of the target area.

5. The method according to claim 2, characterized in that: The step of selecting a target point cloud matching the target object from the laser point cloud corresponding to the target area includes: Dividing the laser point cloud within the target area into at least one point cloud cluster; Perform feature analysis on the at least one point cloud cluster, and determine a point cloud cluster whose features match those of the target object as the target point cloud.

6. The method according to claim 5, characterized in that The performing feature analysis on the at least one point cloud cluster and determining the point cloud cluster whose features match those of the target object as the target point cloud comprises: When the target object is a rod-shaped object perpendicular to the ground, obtaining a direction vector of each point cloud cluster by performing feature analysis on each point cloud cluster in the at least one point cloud cluster; If the direction vector of any point cloud cluster points to a direction perpendicular to the ground, the point cloud cluster is determined as the target point cloud.

7. The method according to claim 5, characterized in that The step of dividing the laser point cloud in the target area into at least one point cloud cluster comprises: When the target object is a rod-shaped object perpendicular to the ground, the horizontal plane of the target area is divided into a plurality of grids, and the laser point cloud in the target area is projected into each grid; the laser point cloud in each grid is clustered to obtain at least one point cloud cluster; and / or, When the target object is a plate-like object perpendicular to the ground, the plane where the target object is located in the target area is divided into multiple grids, and the laser point cloud in the target area is projected into each grid; the laser points projected to the same grid are determined as a point cloud cluster to obtain multiple point cloud clusters.

8. The method according to claim 7, characterized in that The step of selecting a target point cloud matching the target object from the laser point cloud corresponding to the target area includes: When the target object is a plate-like object perpendicular to the ground, by performing feature analysis on the multiple point cloud clusters, a collection of multiple point cloud clusters with planar features, adjacent corresponding grids and a total size of the corresponding grids matching the size of the target object is determined as the target point cloud.

9. The method according to claim 8, characterized in that The step of performing feature analysis on the plurality of point cloud clusters to determine a collection of the plurality of point cloud clusters having plane features, whose corresponding grids are adjacent and whose total size matches the size of the target object as the target point cloud comprises: Perform feature analysis on each point cloud cluster, and mark the grids corresponding to the point cloud clusters with plane features as valid grids; Based on the plane size of the target object, creating a sliding window of the same size; Determine a target position of the sliding window based on the sliding window traversing the plane where the target object is located in the target area, wherein the target position of the sliding window is a position when the sliding window includes the most valid grids; A point cloud cluster in the grid contained when the sliding window is located at the target position is determined as the target point cloud.

10. The method according to claim 1, characterized in that The method further comprises: After determining a second object position of any target object based on the first frame laser point cloud and the reference positioning result, constructing a local feature map based on the determined second object position of the target object, the local feature map including the determined second object position of the target object; After constructing the local feature map, each time a new target point cloud is determined based on a new frame of laser point cloud, the new target object is added to the local feature map based on the determined new target point cloud and the corresponding reference positioning result, wherein the corresponding reference positioning result is obtained by dead reckoning based on the reference positioning result corresponding to the previous frame of laser point cloud; The method of determining the longitudinal deviation of the reference positioning result based on the first object position and the second object position includes: when the number of target objects in the local feature map is not less than a fifth threshold, determining the longitudinal deviation of the reference positioning result based on the second object position of the target object in the local feature map and the first object position of the target object in the high-precision map.