Map representation method, device and computer equipment for target object positioning
By constructing and correlating the line scanning point and surface scanning point features in the point cloud concentration, the problem of large storage space of point cloud maps is solved, and efficient positioning and map representation of unmanned vehicles is realized, which is suitable for large-scale use of unmanned vehicles.
Patent Information
- Application Number
- CN202210483334.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-05-05
- Publication Date
- 2025-07-08
- Estimated Expiration
- 2042-05-05
AI Technical Summary
In the prior art, point cloud maps have large storage space and high bandwidth occupancy when positioning unmanned vehicles, resulting in limited large-scale use of unmanned vehicles.
By identifying line scanning points and surface scanning points in the point cloud set, line features and surface features are constructed, and associated with reference features in the pre-constructed map, the positioning information of the target object is output, and the number of scan points is reduced when the map is represented.
It reduces the storage space requirements of the map, optimizes the positioning accuracy and efficiency of unmanned vehicles, and is suitable for large-scale deployment of unmanned vehicles.
Smart Images

Figure CN114926533B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the technical field of map data processing, and particularly to a map representation method, device, computer device, and storage medium for target object positioning. Background Art
[0002] When using LiDAR (Light Detection and Ranging) to complete the global positioning of an autonomous vehicle, it is necessary to establish a global map. Currently, a point cloud map is used as the global map for UAV positioning. The point cloud map accurately models the three-dimensional environment of the map. However, the point cloud map contains a large amount of redundant information, such as shrubs / leaves, etc., resulting in a large storage space occupied by the point cloud map. For example, the map of the entire Nansha District of Guangzhou is as high as several gigabytes, and the bandwidth occupancy is relatively large when deploying and uploading / downloading the map on the autonomous vehicle. The bulky online map is not conducive to the large-scale use of autonomous vehicles. Summary of the Invention
[0003] Based on this, in view of the above technical problems, it is necessary to provide a map representation method, device, computer device, and storage medium for target object positioning, which can use fewer scan points for map representation when using the map to represent the positioning scenario of the target object, reduce the number of data points of the map, and thus reduce the storage space of the map.
[0004] A map representation method for target object positioning includes: obtaining the point cloud set of the target object at the current moment and obtaining the point features of each scan point in the point cloud set; identifying the line scan points and surface scan points in the point cloud set according to the point features of each scan point; constructing line features through the line scan points and constructing surface features through the surface scan points; obtaining the pre-constructed map and the geographical location of the target object at the previous moment, and obtaining the reference line features and reference surface features corresponding to the geographical location at the previous moment from the map; associating the constructed line features with the reference line features and associating the constructed surface features with the reference line features, and outputting the pose of the constructed line features and the pose of the constructed surface features based on the association result, so as to represent the positioning information of the target object using the map.
[0005] In one embodiment, before the step of obtaining the point features of each scan point in the point cloud set, it further includes: obtaining any scan point from the point cloud set; obtaining the three-dimensional vector of any scan point and the eigenvalue of each dimension vector; calculating the linearity value and the planarity value of any scan point according to the three-dimensional vector and the eigenvalue of each dimension vector; determining the point feature of any scan point according to the linearity value and the planarity value of any scan point and the three-dimensional vector of any scan point.
[0006] In one embodiment, identifying line scan points and surface scan points in a point cloud set according to the point features of each scan point includes: if the linearity value of any scan point is greater than a first preset value, and the included angle between the direction vector in the three-dimensional vector of any scan point and the normal vector of the ground plane is greater than a first preset angle, then any such scan point is a line scan point; if the planarity value of any scan point is greater than a second preset value, and the included angle between the normal vector in the three-dimensional vector of any scan point and the normal vector of the ground plane is less than a second preset angle, then any such scan point is a surface scan point.
[0007] In one embodiment, constructing line features through line scan points includes: obtaining a set of line points, where the set of line points contains multiple line scan points; obtaining any two line scan points from the set of line points; if the distance from the first line scan point to the straight line where the second line scan point is located among any two line scan points is less than a third preset value, and the included angle between the direction vector in the three-dimensional vector of the first line scan point and the direction vector in the three-dimensional vector of the second line scan point is less than a third preset angle, then constructing a line feature through the first line scan point and the second line scan point.
[0008] In one embodiment, constructing surface features through surface scan points includes: obtaining a set of surface points, where the set of surface points contains multiple surface scan points; obtaining any two surface scan points from the set of surface points; if the distance from the first surface scan point to the plane where the second surface scan point is located among any two surface scan points is less than a fourth preset value, and the included angle between the normal vector of the plane where the first surface scan point is located and the normal vector of the plane where the second surface scan point is located is less than a fourth preset angle, then the first surface scan point and the second surface scan point are in the same plane; obtaining at least three surface scan points in the same plane, and constructing surface features according to the at least three surface scan points.
[0009] In one embodiment, obtaining reference line features and reference surface features corresponding to the geographical location at the previous moment from a map includes: obtaining multiple candidate line features and multiple candidate surface features corresponding to the geographical location at the previous moment from the map; obtaining the position information of the constructed line features and the position information of the constructed surface features; screening out reference line features from the multiple candidate line features according to the position information of the constructed line features; screening out reference surface features from the multiple candidate surface features according to the position information of the constructed surface features.
[0010] In one embodiment, outputting the poses of the constructed line features and the constructed surface features based on the association results includes: optimizing the six-degree-of-freedom pose of the constructed line features based on the association result between the constructed line features and the reference line features to obtain the pose of the optimized constructed line features; optimizing the six-degree-of-freedom pose of the constructed surface features based on the association result between the constructed surface features and the reference surface features to obtain the pose of the optimized constructed surface features; outputting the poses of the constructed line features and the constructed surface features in a map representation manner.
[0011] A map representation device for target object positioning, comprising: a first acquisition module, configured to acquire a point cloud set of a target object at the current moment and acquire point features of each scanning point in the point cloud set; an identification module, configured to identify line scanning points and surface scanning points in the point cloud set according to the point features of each scanning point; a construction module, configured to construct line features through the line scanning points and construct surface features through the surface scanning points; a second acquisition module, configured to acquire a pre-constructed map and the geographical location of the target object at the previous moment, and acquire reference line features and reference surface features corresponding to the geographical location at the previous moment from the map; an output module, configured to associate the constructed line features with the reference line features and associate the constructed surface features with the reference line features, and output the poses of the constructed line features and the poses of the constructed surface features based on the association result, so as to represent the positioning information of the target object using a map.
[0012] A computer device, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, wherein when the processor executes the computer program, the steps of the method according to any one of the above embodiments are implemented.
[0013] A computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the method according to any one of the above embodiments are implemented.
[0014] The above-mentioned map representation method, device, computer device and storage medium for target object positioning acquire a point cloud set obtained by scanning a target object at the current moment and acquire point features of each scanning point in the point cloud set, identify line scanning points and surface scanning points in the point cloud set according to the point features of each scanning point, construct line features through the line scanning points and construct surface features through the surface scanning points, acquire a pre-constructed map and the geographical location of the target object at the previous moment, acquire reference line features and reference surface features corresponding to the geographical location at the previous moment from the map, associate the constructed line features with the reference line features and associate the constructed surface features with the reference line features, and output a map interface of the current moment position of the target object based on the association result for map representation. Therefore, when representing the positioning of a target object on a map, only the line features and surface features on which the positioning depends need to be displayed on the map, removing unnecessary redundant scanning points, thereby reducing the number of scanning points when representing the map and reducing the storage space of the map. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Figure 1 It is an application environment diagram of a map representation method for target object positioning in an embodiment;
[0016] Figure 2 It is a flowchart of a map representation method for target object positioning in an embodiment;
[0017] Figure 3Schematic diagram of the classification and extraction process of three types of scan points in an embodiment;
[0018] Figure 4 Schematic diagram of the process of identifying three types of scan points in a point cloud set based on point features in an embodiment;
[0019] Figure 5 Schematic diagram of describing two line scan points being collinear in an embodiment;
[0020] Figure 6 Schematic diagram of describing two surface scan points being coplanar in an embodiment;
[0021] Figure 7 Schematic diagram of the map display interface of the environmental features corresponding to the geographical location at the previous moment in the map in an embodiment;
[0022] Figure 8 Schematic diagram of the map display interface when using a point cloud map to represent the positioning information of a target object in an embodiment;
[0023] Figure 9 Schematic diagram of the map display interface when using a map representation method for target object positioning in this application to represent the positioning of a target object in an embodiment;
[0024] Figure 10 Block diagram of the structure of a map representation device for target object positioning in an embodiment;
[0025] Figure 11 Internal structure diagram of a computer device in an embodiment. Detailed implementation manners
[0026] In order to make the objectives, technical solutions and advantages of this application clearer, the following further elaborates on this application in combination with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain this application and are not used to limit this application.
[0027] A map representation method for target object positioning provided by this application can be applied to an application environment as shown in Figure 1 When a vehicle is equipped with an intelligent terminal on which a pre-constructed map is installed. When the vehicle is moving, the intelligent terminal uses the map representation method to display the positioning information of the vehicle in real time. Combining Figure 1As shown, the intelligent terminal on the vehicle executes a method for representing the positioning of a target object in a map according to the present application. Specifically, the intelligent terminal obtains the point cloud set scanned at the current moment of the target object and obtains the point features of each scanned point in the point cloud set. Among them, the point cloud set can be scanned by the lidar on the vehicle. Furthermore, the intelligent terminal identifies the line scanned points and surface scanned points in the point cloud set according to the point features of each scanned point, constructs line features through the line scanned points, constructs surface features through the surface scanned points, obtains the pre-constructed map and the geographical location of the target object at the previous moment, obtains the reference line features and reference surface features corresponding to the geographical location at the previous moment from the map, associates the constructed line features with the reference line features and associates the constructed surface features with the reference line features, and outputs the poses of the constructed line features and surface features based on the association result to represent the positioning information of the target object using the map.
[0028] In one embodiment, as Figure 2 shown, a method for representing the positioning of a target object in a map is provided. Taking the intelligent terminal on the vehicle in Figure 1 as an example, the method includes the following steps:
[0029] S202, obtain the point cloud set of the target object at the current moment and obtain the point features of each scanned point in the point cloud set.
[0030] In this embodiment, the target object can be a vehicle, such as an autonomous vehicle. The point cloud set can be scanned by the lidar, and the point cloud set contains multiple scanned points. Each scanned point has a point feature. It can be that the point feature is used to characterize that the scanned point is one of the scanned points of the line feature in the map. Or, the point feature is used to characterize that the scanned point is one of the scanned points of the surface feature in the map. Or, the point feature is used to characterize that the scanned point is a scanned point that is neither a line feature nor a surface feature in the map.
[0031] S204, identify the line scanned points and surface scanned points in the point cloud set according to the point features of each scanned point.
[0032] In this embodiment, the line scanned point refers to: when generating a map using the point cloud set, the scanned point that constitutes the line feature in the map. The surface scanned point refers to: when generating a map using the point cloud set, the scanned point that constitutes the surface feature in the map. The intelligent terminal screens one or more line scanned points and one or more surface scanned points from the point cloud set according to the point features of each scanned point.
[0033] Specifically, three types of scanned points are screened out from the scanned points scanned by the lidar, that is, as Figure 3As shown, the three types of scan points include line scan points, plane scan points, and ground scan points. Among them, line scan points and plane scan points are mainly used in this application. Line scan points: used to represent specified edge features, perpendicular to the XY plane in the map, such as poles. The geometric conditions satisfied by line scan points: the tilt angle of the main vector of the scan point should be as large as possible, approaching 90 degrees. Plane scan points: used to represent specified plane features, perpendicular to the XY plane in the map, such as walls. The geometric conditions satisfied by plane scan points: the tilt angle of the normal vector of the scan point should be as large as possible, approaching 0 degrees. The process of identifying the three types of scan points in the point cloud set based on point features is shown in Figure 4 as shown.
[0034] S206, construct line features through line scan points and construct plane features through plane scan points.
[0035] In this embodiment, a line feature refers to a feature with a line characteristic when representing the map on the map. For example, rod-shaped objects in the environment, such as tree trunks, utility poles, traffic light poles, etc., all have line characteristics, and tree trunks, utility poles, traffic light poles, etc. can be used as line features. To construct line features through line scan points, specifically: identify multiple line scan points belonging to the same line feature from multiple line scan points, and construct the corresponding line feature through multiple line scan points of the same line feature, so as to obtain one or more line features.
[0036] A plane feature refers to a feature with a plane characteristic when representing the map on the map. For example, planar objects in the environment, such as building walls, traffic signs, etc., all have plane characteristics, and walls, traffic signs, etc. can be used as plane features. To construct plane features through plane scan points, specifically: identify multiple plane scan points belonging to the same plane feature from multiple plane scan points, and construct the corresponding plane feature through multiple plane scan points of the same plane feature, so as to obtain one or more plane features.
[0037] S208, obtain the pre-constructed map and the geographical location of the target object at the previous moment, and obtain the reference line feature and reference plane feature corresponding to the geographical location at the previous moment from the map.
[0038] In this embodiment, the map is pre-constructed based on the point cloud set obtained by lidar scanning. The constructed map can display the geographical environment corresponding to the geographical location of the target object at any moment. The geographical environment contains multiple environmental features, and the multiple environmental features can include plane features and line features.
[0039] Obtain the geographical location of the target object at the previous moment here, and then obtain the environmental features of the geographical location at the previous moment from the map, and determine the reference line features and reference plane features from the environmental features of the geographical location at the previous moment. Among them, the reference line features refer to the features representing line characteristics in the environmental features of the geographical location at the previous moment, such as tree trunks, utility poles, traffic light poles, etc. The reference plane features refer to the features representing plane characteristics in the environmental features of the geographical location at the previous moment, such as walls, traffic signs, etc.
[0040] S210, associate the constructed line features with the reference line features and associate the constructed plane features with the reference line features, and output the poses of the constructed line features and the poses of the constructed plane features based on the association results, so as to represent the positioning information of the target object using a map.
[0041] In this embodiment, since the geographical location of the target object at the current moment cannot be known in advance, it is impossible to display the geographical environment of the target object at the current moment through a pre-constructed map, and thus it is also impossible to display the positioning information of the target object in the form of a map. In an actual application scenario, during the process of obtaining a point cloud by lidar scanning, the time interval between consecutive scans is very short, that is, the environmental features corresponding to the geographical locations of the target object at the current moment and the previous moment are relatively similar. Therefore, the constructed line features at the current moment can be associated with the reference line features at the previous moment and the constructed plane features at the current moment can be associated with the reference plane features at the previous moment, so as to map the constructed line features and the constructed plane features at the current moment onto the map, and then display the positioning information of the target object in the form of a map.
[0042] Specifically, perform feature association between the constructed line features and the reference line features. The way of feature association can be: obtain the x-y plane coordinates of any scan point of the reference line features, and obtain the x-y plane coordinates of any scan point of the constructed line features. When the x-y plane coordinates of these two scan points satisfy the set relationship, perform feature association between the constructed line features and the reference line features. Among them, the x-y plane coordinates here are constructed from the first two dimensions of the three-dimensional vector coordinates of the scan point. For example, the three-dimensional vector coordinates of any scan point are (x0, y0, z0), and the plane coordinates are (x0, y0). It should be noted that the x-y plane coordinates are used here instead of directly using the three-dimensional vector coordinates because when judging the association of line features, the z-direction coordinate does not affect the result of line feature association. Therefore, using the x-y plane coordinates of the scan point for judgment can reduce the amount of data processing.
[0043] In one example, any scan point of the reference line feature is the center point of the reference line feature, and any scan point of the constructed line feature is the center point of the constructed line feature. For example, the three-dimensional vector coordinates of the center point of the reference line feature in the map are (x1, y1, z1). Among them, (x1, y1) represents the xy plane coordinates of the map plane where the center point of the reference line feature is located. Similarly, the three-dimensional vector coordinates of the center point of the constructed line feature are (x2, y2, z2). Among them, (x2, y2) represents the xy plane coordinates of the map plane where the center point of the constructed line feature is located. When (x1, y1) and (x2, y2) meet the first set condition, it is determined that the reference line feature and the constructed line feature meet the proximity condition on the map plane, and the constructed line feature is feature-associated with the reference line feature. The first set condition can be: the Euclidean distance of the corresponding coordinates in the two plane coordinates is less than the set value. The calculation formula of Euclidean distance is: sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)).
[0044] In one embodiment, there are multiple reference line features, and the method of feature association can be: obtaining the xy plane coordinates of any scanning point of each reference line feature, and obtaining the xy plane coordinates of any scanning point of the constructed line feature; when the xy plane coordinates of any scanning point of any reference line feature among the multiple reference line features and the xy plane coordinates of any scanning point of the constructed line feature satisfy a set relationship, the constructed line feature is feature associated with the any reference line feature.
[0045] For example, as described above, any scanning point of each reference line feature is the center point of the reference line feature, and any scanning point of the constructed line feature is the center point of the constructed line feature. In advance, the three-dimensional vector coordinates of the center points of all reference line features in the map are retained, and only the coordinate values of the first two dimensions, i.e. (x, y), are established to build a two-dimensional kd-tree. For the current laser radar scanning frame at the current moment, the coordinate values of the first two dimensions of the center point of each constructed line feature are determined, and the reference line feature on the map closest to each constructed line feature is searched in the two-dimensional kd-tree, and then the searched reference line feature is associated with the corresponding constructed line feature.
[0046] In this embodiment, the constructed surface feature is feature-associated with the reference surface feature. The feature association method can be: obtaining any scanning point in the constructed surface feature, calculating the distance value from the any scanning point to the reference surface feature, and when the distance value meets the second set condition, the constructed surface feature is feature-associated with the reference surface feature.
[0047] In one example, there are multiple reference surface features, and the distance value from any scanning point in the constructed surface feature to each reference surface feature is calculated to obtain multiple distance values. The second set condition is the minimum distance value. The minimum distance value is screened out from the multiple distance values, and the reference surface feature corresponding to the minimum distance value is feature associated with the constructed surface feature. For example, all reference surface features in the map are stored in advance, and the distance value from any scanning point in the constructed surface feature to each reference surface feature is calculated, and the reference surface feature with the smallest distance value is feature associated with the constructed surface feature. Since there are fewer surface features in the point cloud obtained by scanning at the current moment, the matching reference surface features are searched directly by using the above-mentioned point-to-surface distance method, which can reduce the amount of calculation and improve the efficiency of feature association.
[0048] In one example, the pose of the constructed line feature and the pose of the constructed surface feature are output based on the association result, including: using the optimal value algorithm of the result of the feature association between the reference line feature and the constructed line feature to calculate the six-degree-of-freedom pose of the constructed line feature, and using the optimal value algorithm of the result of the feature association between the reference surface feature and the constructed surface feature to calculate the six-degree-of-freedom pose of the constructed surface feature, and then displaying the six-degree-of-freedom pose of the constructed line feature and the six-degree-of-freedom pose of the constructed surface feature on the map, thereby realizing the positioning of the target object at the current moment.
[0049] For example, calculating the six-degree-of-freedom pose (x, y, z, roll, pitch, yaw) requires using the result of feature association to construct an optimization problem to solve the final pose. For each pair of line feature-line feature and surface feature-surface feature association results, the point-to-line / point-to-surface distances of all associated pairs are accumulated, the sum of distances is minimized, and the optimal pose is obtained to represent the poses of each constructed line feature and each constructed surface feature on the map, thereby completing the positioning of the target object.
[0050] The map representation method for positioning the target object mentioned above obtains a point cloud set obtained by scanning the target object at the current moment and obtains the point features of each scanning point in the point cloud set, identifies the line scanning points and surface scanning points in the point cloud set according to the point features of each scanning point, constructs line features through line scanning points, and constructs surface features through surface scanning points, obtains a pre-constructed map and the geographic location of the target object at the previous moment, obtains the reference line features and reference surface features corresponding to the geographic location at the previous moment from the map, associates the constructed line features with the reference line features and associates the constructed surface features with the reference line features, and outputs a map interface of the current moment position of the target object based on the association results for map representation. Therefore, when the map represents the positioning of the target object, it is only necessary to display the line features and surface features that the positioning depends on on the map, and remove unnecessary redundant scanning points, thereby reducing the number of scanning points during map representation and reducing the storage space of the map.
[0051] In one embodiment, before the step of obtaining the point features of each scan point in the point cloud set, the following steps are further included: obtaining any scan point from the point cloud set; obtaining the three-dimensional vector of any scan point and the eigenvalues of each dimension vector; calculating the linearity value and the planarity value of any scan point according to the three-dimensional vector and the eigenvalues of each dimension vector; and determining the point feature of any scan point according to the linearity value and the planarity value of any scan point and the three-dimensional vector of any scan point.
[0052] In this embodiment, each scan point in the point cloud set is provided with a three-dimensional vector and the eigenvalues of each dimension vector. For example, a kd-tree (a tree-shaped data structure for storing instance points in a k-dimensional space for rapid retrieval) is established for the collected point cloud set. For any scan point in the point cloud set, all N (N is a positive integer) neighbor points within a certain radius (such as 0.5 m) of this scan point are obtained by using the kd-tree. A matrix of N×3 is constructed with this scan point and these neighbor points, and PCA decomposition is performed on this matrix to obtain three eigenvalues. The three eigenvalues are λ1, λ2, and λ3 respectively. Among them, λ1 corresponds to the eigenvector v1, λ2 corresponds to the eigenvector v2, and λ3 corresponds to the eigenvector v3. That is, the above three-dimensional vectors can be represented as v1, v2, and v3 respectively. Based on λ1, λ2, and λ3, and v1, v2, and v3, the linearity value and the planarity value of any scan point are calculated. Among them, λ1>λ2>λ3, and at this time, v1 represents the direction vector and v3 represents the normal vector.
[0053] Linearity:
[0054] Planarity:
[0055] Furthermore, the point feature of any scan point is determined based on the linearity value and the planarity value of any scan point and the three-dimensional vector of any scan point.
[0056] In one embodiment, the above step of identifying the line scan points and the plane scan points in the point cloud set according to the point features of each scan point includes: if the linearity value of any scan point is greater than the first preset value, and the angle between the direction vector and the ground plane normal vector in the three-dimensional vector of any scan point is greater than the first preset angle, then any scan point is a line scan point; if the planarity value of any scan point is greater than the second preset value, and the angle between the normal vector and the ground plane normal vector in the three-dimensional vector of any scan point is less than the second preset angle, then any scan point is a plane scan point.
[0057] As in the above example, each scan point is classified using the set parameters (such as linearity and planarity), and then the line scan points and plane scan points in the point cloud set are identified. For the line scan points, the determination condition is that the linearity value is greater than the first preset value, and the included angle between the direction vector and the ground plane normal vector in the three-dimensional vector of any scan point is greater than the first preset angle. For the plane scan points, the determination condition is that the planarity value is greater than the second preset value, and the included angle between the normal vector and the ground plane normal vector in the three-dimensional vector of any scan point is less than the second preset angle. For example:
[0058] Feature of line scan points: The included angle between the direction vector of the scan point and the ground plane normal vector > 70 degrees, and the linearity value > 0.35.
[0059] Feature of plane scan points: The included angle between the normal vector of the scan point and the ground plane normal vector < 25 degrees, and the planarity value > 0.1.
[0060] Therefore, the line scan points and plane scan points can be accurately screened from the point cloud set.
[0061] In one embodiment, constructing the line feature through the line scan points as described above includes: obtaining a line point set, where the line point set contains multiple line scan points; obtaining any two line scan points from the line point set; if the distance from the first line scan point to the straight line where the second line scan point is located in any two line scan points is less than the third preset value, and the included angle between the direction vector in the three-dimensional vector of the first line scan point and the direction vector in the three-dimensional vector of the second line scan point is less than the third preset angle, then construct the line feature through the first line scan point to the second line scan point.
[0062] In this embodiment, after the line scan points and plane scan points in the point cloud set are identified, the scan points in the point cloud set are classified to obtain a line point set and a plane point set. The line point set contains multiple line scan points. When the distance from the first line scan point to the straight line where the second line scan point is located in any two line scan points is less than the third preset value, and the included angle between the direction vector of the first line scan point and the direction vector of the second line scan point is less than the third preset angle, the first line scan point and the second line scan point are collinear. Among them, the straight line where the second line scan point is located can be determined by the second line scan point and the direction vector of the second line scan point. The direction vector of the first line scan point and the direction vector of the second line scan point can both be the eigenvector corresponding to the maximum eigenvalue obtained by PCA decomposition as described above. For example, when the above λ1 > λ2 > λ3, at this time, v1 represents the direction vector and v3 represents the normal vector. For example Figure 5As shown, the first line scan point is point a1, the second line scan point is point a2, the distance from point a1 to the line where point a2 is located is d1, and the included angle between the direction vectors of point a1 and point a2 is q. If d1 is less than the third preset value and q is less than the third preset angle, it can be determined that point a1 and point a2 are collinear. For example, if d1 is less than 0.1mm and q is less than 1°, point a1 and point a2 are collinear.
[0063] Specifically, a kd-tree is built based on the line point set P constructed from all line scan points. An empty list C1 of candidate line scan points and a queue Q1 are initialized. Each unvisited line scan point in the line point set P1 is added to the queue Q1. When the queue Q1 is not empty, for each line scan point P1 j in the queue Q1, a set of neighbor points N1 within a certain radius is searched in the corresponding kd-tree. For each neighbor point n i in the point set N1, it is checked whether the point has been visited and meets the line consistency condition. If it meets the condition, the neighbor point n i is added to the queue Q1, and n i is marked as visited. Among them, the line consistency condition: if two line scan points belong to the same line, then the distance from point a1 to the line where point a2 is located and the included angle between the direction vectors of the two points should be less than a certain threshold. Note: The direction vector of the line where the line scan point is located is the eigenvector corresponding to the largest eigenvalue obtained after the above PCA decomposition.
[0064] Among them, the first line scan point can be the starting point of the line feature, and the second line scan point can be the ending point of the line feature. The line feature can be constructed through the starting point and the ending point.
[0065] Therefore, the line features of the map representation of the target object at the current moment can be constructed.
[0066] In one embodiment, constructing the surface feature through the surface scan points as described above includes: obtaining a surface point set, which contains multiple surface scan points; obtaining any two surface scan points from the surface point set; if the distance from the first surface scan point to the plane where the second surface scan point is located is less than the fourth preset value, and the included angle between the normal vector of the plane where the first surface scan point is located and the normal vector of the plane where the second surface scan point is located is less than the fourth preset angle, then the first surface scan point and the second surface scan point are in the same plane; obtaining at least three surface scan points in the same plane, and constructing the surface feature according to the at least three surface scan points.
[0067] In this embodiment, the surface point set includes multiple surface scanning points. When the distance from the first surface scanning point to the plane where the second surface scanning point is located among any two surface scanning points is less than a fourth preset value, and the angle between the normal vector of the plane where the first surface scanning point is located and the normal vector of the plane where the second surface scanning point is located is less than a fourth preset angle, the first surface scanning point and the second surface scanning point are coplanar. Among them, the plane where the second surface scanning point is located can be determined by the second surface scanning point and the normal vector of the second surface scanning point. The normal vector of the first surface scanning point and the normal vector of the second surface scanning point can both be the eigenvector corresponding to the minimum eigenvalue obtained by PCA decomposition as described above. For example, in the above λ1>λ2>λ3, at this time v1 represents the direction vector, and v3 represents the normal vector. For example Figure 6 As shown, the first line scan point is point a3, the second line scan point is point a4, the distance between point a3 and point a4 on the plane is d2, and the angle between the normal vectors of point a3 and point a4 is f. If d2 is less than the fourth preset value, and f is less than the fourth preset angle, it can be determined that point a3 and point a4 are coplanar. If d1 is less than 0.1 mm, and f is less than 1°, point a1 and point a2 are coplanar.
[0068] Specifically, a kd-tree is established based on the face point set P2 constructed based on all face scanning points, and an empty list C2 of candidate line scanning points and a queue Q2 are initialized. Each unvisited line scanning point of the face point set P2 is added to the queue Q2. When the queue Q2 is not empty, for each line scanning point P2j in the queue Q2, the point set N2 of neighboring points within a certain radius is searched in the corresponding kd-tree. For each neighbor point mi in the point set N2, check whether the point has been visited and meets the line consistency condition. If so, add the neighbor point mi to the queue Q2 and mark mi as visited. Among them, the surface consistency condition: if two face scanning points belong to the same plane, then the distance from point a3 to point a4 on the plane and the angle between the normal vectors of the two points on the plane should be less than a certain threshold. The direction of the normal vector of the plane where the face scanning point is located is the eigenvector corresponding to the minimum eigenvalue.
[0069] When constructing surface features, the formula ax+by+cz+d=0 can be used to determine the surface features. Here, a, b, c, and d are parameters in the formula. For example, three surface scanning points on the same plane are selected, and the coordinate values of the three surface scanning points are (x3, y3, z3), (x4, y4, z4), and (x5, y5, z5). Substituting the coordinate values of the three surface scanning points into the above formula, the parameters a, b, c, and d can be determined, and then the surface features can be determined.
[0070] Therefore, the surface features of the map representation of the target object at the current moment can be constructed.
[0071] In one embodiment, obtaining the reference line feature and the reference surface feature corresponding to the geographical location at the previous moment from the map includes: obtaining a plurality of candidate line features in the geographical location at the previous moment from the map; obtaining the position information of the constructed line feature and the position information of the constructed surface feature; screening out the reference line feature from the plurality of candidate line features according to the position information of the constructed line feature; and screening out the reference surface feature from the plurality of candidate surface features according to the position information of the constructed surface feature.
[0072] In this embodiment, the pre-constructed map contains the environmental features corresponding to each geographical location. A plurality of candidate line features and a plurality of candidate surface features corresponding to the geographical location at the previous moment are obtained from the map. The reference line feature is screened out from the plurality of candidate line features according to the position information of the constructed line feature, and the reference surface feature is screened out from the plurality of candidate surface features according to the position information of the constructed surface feature. For example, the nearest reference line feature to the constructed line feature is obtained from the plurality of candidate line features, and the nearest reference surface feature to the constructed surface feature is obtained from the plurality of candidate surface features. Among them, the reference line feature is screened out through the position information of the plurality of candidate line features and the position information of the constructed line feature, and the reference surface feature is screened out through the position information of the plurality of candidate surface features and the position information of the constructed surface feature. For example, the environmental features corresponding to the geographical location at the previous moment in the map are as Figure 7 shown. Figure 7 It contains a plurality of candidate line features and a plurality of candidate surface features. The line feature is represented by a line, and the surface feature is represented by a closed polygon. Assume that the constructed line feature is the Figure 7 line feature L1 in it, and the reference line feature L2 is screened out from the plurality of candidate line features through the position information of the line feature L1. Among them, the geographical location of the reference line feature L2 on the map is the closest to the line feature L1. Similarly, the reference surface feature is screened out.
[0073] In one embodiment, outputting the pose of the constructed line feature and the pose of the constructed surface feature based on the association result includes: optimizing the six-degree-of-freedom pose of the constructed line feature based on the association result between the constructed line feature and the reference line feature to obtain the optimized pose of the constructed line feature; optimizing the six-degree-of-freedom pose of the constructed surface feature based on the association result between the constructed surface feature and the reference surface feature to obtain the optimized pose of the constructed surface feature; and outputting the pose of the constructed line feature and the pose of the constructed surface feature in the form of map representation.
[0074] In this embodiment, the pose of the constructed line feature is output based on the association result between the constructed line feature and the reference line feature, and the pose of the constructed surface feature is output based on the association result between the constructed surface feature and the reference surface feature. Specifically, for the association between line features, the corresponding association relationship is constructed by using the distance from a point to the center of the line. For the association between surface features, since relatively few surface features are detected in the current frame obtained by lidar scanning, the distance from a point to the surface is directly used to brute-force search for the best corresponding association relationship. After associating the constructed line feature with the reference line feature and the constructed surface feature with the reference surface feature, the association between the constructed feature and the map is completed.
[0075] After associating the constructed feature with the map, the six-degree-of-freedom position and orientation are output. Specifically, calculating the six-degree-of-freedom pose (x y z roll pitch yaw) requires using the result of feature association to construct an optimization problem to solve the final pose. For each pair of line-line or surface-surface association results, accumulate the distances from points to lines or points to surfaces for all association pairs, and minimize the sum of the distances to obtain the optimal pose, thereby completing the positioning of the target object.
[0076] In summary, a map representation method for target object positioning in this application uses line features to represent rod-shaped objects in the map environment, such as tree trunks / traffic light poles, and makes no distinction between tree trunks / traffic poles, regarding them all as line features. Surface features are used to represent planar objects in the map environment, such as building walls / traffic signs. Therefore, the number of scan points used for representing the positioning of the target object using the map is greatly reduced, and the storage space of the map is decreased. As Figure 8 and Figure 9 shown, Figure 8 is the map display interface when directly using a point cloud map to represent the positioning information of the target object, Figure 9 is the map display interface when using a map representation method for target object positioning in this application to represent the positioning of the target object. Comparing Figure 8 and Figure 9 , the point cloud map Figure 3 in the three-dimensional environment contains all scan points and occupies a large storage space. A map representation method for target object positioning in this application directly uses a feature map. A line feature is represented by only two points, and a surface feature is represented by only one contour or many contour points, greatly reducing the number of scan points of the map. Thus, when the map represents the positioning information of the target object, the map occupies a small storage space.
[0077] It should be understood that although the steps in the flowchart are shown sequentially in the direction of the arrows, these steps are not necessarily executed sequentially in the order indicated by the arrows. Unless otherwise clearly stated in this document, there is no strict order restriction for the execution of these steps, and these steps can be executed in other orders. Moreover, at least a part of the steps in the flowchart may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily executed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be executed alternately or in turn with at least a part of other steps or sub-steps or stages of other steps.
[0078] In one embodiment, as Figure 10 shown, a map representation device for target object positioning is provided, including a first acquisition module 1002, an identification module 1004, a construction module 1006, a second acquisition module 1008, and an output module 1010. The first acquisition module 1002 is configured to acquire a point cloud set obtained by scanning the target object at the current moment and acquire the point features of each scanning point in the point cloud set; the identification module 1004 is configured to identify line scanning points and surface scanning points in the point cloud set according to the point features of each scanning point; the construction module 1006 is configured to construct line features through the line scanning points and construct surface features through the surface scanning points; the second acquisition module 1008 is configured to acquire a pre-constructed map and the geographical location of the target object at the previous moment, and acquire the reference line features and reference surface features corresponding to the geographical location at the previous moment from the map; the output module 1010 is configured to associate the constructed line features with the reference line features and associate the constructed surface features with the reference line features, and output the poses of the constructed line features and the poses of the constructed surface features based on the association results, so as to represent the positioning information of the target object using the map.
[0079] In one of the embodiments, acquiring the point features of each scanning point in the point cloud set includes: acquiring any scanning point from the point cloud set; acquiring the three-dimensional vector of any scanning point and the eigenvalue of each dimensional vector; calculating the linearity value and the planarity value of any scanning point according to the three-dimensional vector and the eigenvalue of each dimensional vector; and determining the point feature of any scanning point according to the linearity value and the planarity value of any scanning point and the three-dimensional vector of any scanning point.
[0080] In one embodiment, identifying line scanning points and surface scanning points in a point cloud set according to the point features of each scanning point includes: if the linearity value of any scanning point is greater than a first preset value, and the angle between the direction vector in the three-dimensional vector of any scanning point and the normal vector of the ground plane is greater than a first preset angle, then any scanning point is a line scanning point; if the planarity value of any scanning point is greater than a second preset value, and the angle between the normal vector in the three-dimensional vector of any scanning point and the normal vector of the ground plane is less than a second preset angle, then any scanning point is a surface scanning point.
[0081] In one embodiment, constructing a line feature through the line scanning points includes: obtaining a set of line points, where the set of line points contains multiple line scanning points; obtaining any two line scanning points from the set of line points; if the distance from the first line scanning point to the line where the second line scanning point is located in any two line scanning points is less than a third preset value, and the angle between the direction vector in the three-dimensional vector of the first line scanning point and the direction vector in the three-dimensional vector of the second line scanning point is less than a third preset angle, then a line feature is constructed through the first line scanning point and the second line scanning point.
[0082] In one embodiment, constructing a surface feature through surface scanning points includes: obtaining a set of surface points, where the set of surface points contains multiple surface scanning points; obtaining any two surface scanning points from the set of surface points; if the distance from the first surface scanning point to the plane where the second surface scanning point is located in any two surface scanning points is less than a fourth preset value, and the angle between the normal vector of the plane where the first surface scanning point is located and the normal vector of the plane where the second surface scanning point is located is less than a fourth preset angle, then the first surface scanning point and the second surface scanning point are in the same plane; obtaining at least three surface scanning points in the same plane, and constructing a surface feature according to the at least three surface scanning points.
[0083] In one embodiment, obtaining a reference line feature and a reference surface feature corresponding to the geographical location at the previous moment from a map includes: obtaining multiple candidate line features and multiple candidate surface features in the geographical location at the previous moment from the map; obtaining the position information of the constructed line feature and the position information of the constructed surface feature; screening out the reference line feature from the multiple candidate line features according to the position information of the constructed line feature; screening out the reference surface feature from the multiple candidate surface features according to the position information of the constructed surface feature.
[0084] In one embodiment, outputting the poses of the constructed line feature and the constructed surface feature based on the association result includes: optimizing the six-degree-of-freedom pose of the constructed line feature based on the association result between the constructed line feature and the reference line feature to obtain the pose of the optimized constructed line feature; optimizing the six-degree-of-freedom pose of the constructed surface feature based on the association result between the constructed surface feature and the reference surface feature to obtain the pose of the optimized constructed surface feature; outputting the poses of the constructed line feature and the constructed surface feature in a map representation manner.
[0085] For the specific limitations of the map representation device for target object positioning, reference can be made to the limitations of the map representation method for target object positioning in the above text, which will not be elaborated here. Each module in the above map representation device for target object positioning can be implemented in whole or in part by software, hardware, and their combination. Each of the above modules can be embedded in the processor of the computer device in hardware form or be independent of it, or be stored in the memory of the computer device in software form, so as to facilitate the processor to call and execute the operations corresponding to each of the above modules.
[0086] In one embodiment, a computer device is provided. The computer device can be an intelligent terminal installed on a vehicle, and its internal structure diagram can be as Figure 11 shown. The computer device includes a processor, a memory, a network interface, a display screen, and an input device connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The network interface of the computer device is used to communicate with an external terminal through a network connection. When the computer program is executed by the processor, it realizes a map representation method for target object positioning. The display screen of the computer device can be a liquid crystal display screen or an electronic ink display screen. The input device of the computer device can be a touch layer covering the display screen, or a button, a trackball, or a touchpad set on the shell of the computer device, or an external keyboard, a touchpad, or a mouse, etc.
[0087] Those skilled in the art can understand that Figure 11 the structure shown in
[0088] In one embodiment, a computer device is provided, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the computer program, the following steps are implemented: obtaining a point cloud set of a target object at the current moment and obtaining point features of each scanning point in the point cloud set; identifying line scanning points and surface scanning points in the point cloud set according to the point features of each scanning point; constructing a line feature through the line scanning points and constructing a surface feature through the surface scanning points; obtaining a pre-constructed map and the geographical location of the target object at the previous moment, and obtaining a reference line feature and a reference surface feature corresponding to the geographical location at the previous moment from the map; associating the constructed line feature with the reference line feature and associating the constructed surface feature with the reference line feature, and outputting the pose of the constructed line feature and the pose of the constructed surface feature based on the association result, so as to represent the positioning information of the target object using the map.
[0089] In one embodiment, when the processor executes the computer program, the following steps are further implemented: obtaining any scanning point from the point cloud set; obtaining the three-dimensional vector of any scanning point and the eigenvalue of each dimensional vector; calculating the linearity value and the planarity value of any scanning point according to the three-dimensional vector and the eigenvalue of each dimensional vector; determining the point feature of any scanning point according to the linearity value and the planarity value of any scanning point and the three-dimensional vector of any scanning point.
[0090] In one embodiment, when the processor executes the computer program to implement the step of identifying line scanning points and surface scanning points in the point cloud set according to the point features of each scanning point, the following steps are further implemented: if the linearity value of any scanning point is greater than a first preset value, and the included angle between the direction vector in the three-dimensional vector of any scanning point and the normal vector of the ground plane is greater than a first preset angle, then any scanning point is a line scanning point; if the planarity value of any scanning point is greater than a second preset value, and the included angle between the normal vector in the three-dimensional vector of any scanning point and the normal vector of the ground plane is less than a second preset angle, then any scanning point is a surface scanning point.
[0091] In one embodiment, when the processor executes the computer program to implement the step of constructing a line feature through the line scanning points, the following steps are further implemented: obtaining a line point set, where the line point set includes multiple line scanning points; obtaining any two line scanning points from the line point set; if the distance from the first line scanning point to the straight line where the second line scanning point is located in any two line scanning points is less than a third preset value, and the included angle between the direction vector in the three-dimensional vector of the first line scanning point and the direction vector in the three-dimensional vector of the second line scanning point is less than a third preset angle, then construct a line feature through the first line scanning point and the second line scanning point.
[0092] In one embodiment, when the processor executes a computer program to implement the step of constructing a surface feature from surface scan points, the following steps are further implemented: obtaining a set of surface points, where the set of surface points contains a plurality of surface scan points; obtaining any two surface scan points from the set of surface points; if the distance from the first surface scan point to the plane where the second surface scan point is located in any two surface scan points is less than a fourth preset value, and the included angle between the normal vector of the plane where the first surface scan point is located and the normal vector of the plane where the second surface scan point is located is less than a fourth preset angle, then the first surface scan point and the second surface scan point are in the same plane; obtaining at least three surface scan points in the same plane, and constructing a surface feature according to the at least three surface scan points.
[0093] In one embodiment, when the processor executes a computer program to implement the step of obtaining a reference line feature and a reference surface feature corresponding to the geographical location at the previous moment from a map, the following steps are further implemented: obtaining a plurality of candidate line features and a plurality of candidate surface features corresponding to the geographical location at the previous moment from the map; obtaining the position information of the constructed line feature and the position information of the constructed surface feature; screening out the reference line feature from the plurality of candidate line features according to the position information of the constructed line feature; screening out the reference surface feature from the plurality of candidate surface features according to the position information of the constructed surface feature.
[0094] In one embodiment, when the processor executes a computer program to implement the step of outputting the pose of the constructed line feature and the pose of the constructed surface feature based on the association result, the following steps are further implemented: optimizing the six-degree-of-freedom pose of the constructed line feature based on the association result between the constructed line feature and the reference line feature to obtain the pose of the optimized constructed line feature; optimizing the six-degree-of-freedom pose of the constructed surface feature based on the association result between the constructed surface feature and the reference surface feature to obtain the pose of the optimized constructed surface feature; outputting the pose of the constructed line feature and the pose of the constructed surface feature in a map representation manner.
[0095] In one embodiment, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the following steps are implemented: obtaining the point cloud set of the target object at the current moment and obtaining the point features of each scan point in the point cloud set; identifying the line scan points and surface scan points in the point cloud set according to the point features of each scan point; constructing a line feature through the line scan points and constructing a surface feature through the surface scan points; obtaining the pre-constructed map and the geographical location of the target object at the previous moment, and obtaining the reference line feature and the reference surface feature corresponding to the geographical location at the previous moment from the map; associating the constructed line feature with the reference line feature and associating the constructed surface feature with the reference line feature, and outputting the pose of the constructed line feature and the pose of the constructed surface feature based on the association result, so as to represent the positioning information of the target object in a map.
[0096] In one embodiment, when the computer program is executed by a processor, the following steps are further implemented: obtaining any scanning point from a point cloud set; obtaining the three-dimensional vector of any scanning point and the eigenvalue of each dimensional vector; calculating the linearity value and the planarity value of any scanning point according to the three-dimensional vector and the eigenvalue of each dimensional vector; determining the point feature of any scanning point according to the linearity value and the planarity value of any scanning point and the three-dimensional vector of any scanning point.
[0097] In one embodiment, when the computer program is executed by a processor to implement the step of identifying line scanning points and surface scanning points in the point cloud set according to the point features of each scanning point, the following steps are further implemented: if the linearity value of any scanning point is greater than a first preset value, and the included angle between the direction vector in the three-dimensional vector of any scanning point and the normal vector of the ground plane is greater than a first preset angle, then any scanning point is a line scanning point; if the planarity value of any scanning point is greater than a second preset value, and the included angle between the normal vector in the three-dimensional vector of any scanning point and the normal vector of the ground plane is less than a second preset angle, then any scanning point is a surface scanning point.
[0098] In one embodiment, when the computer program is executed by a processor to implement the step of constructing a line feature through line scanning points, the following steps are further implemented: obtaining a line point set, where the line point set contains multiple line scanning points; obtaining any two line scanning points from the line point set; if the distance from the first line scanning point to the straight line where the second line scanning point is located in any two line scanning points is less than a third preset value, and the included angle between the direction vector in the three-dimensional vector of the first line scanning point and the direction vector in the three-dimensional vector of the second line scanning point is less than a third preset angle, then construct a line feature through the first line scanning point and the second line scanning point.
[0099] In one embodiment, when the computer program is executed by a processor to implement the step of constructing a surface feature through surface scanning points, the following steps are further implemented: obtaining a surface point set, where the surface point set contains multiple surface scanning points; obtaining any two surface scanning points from the surface point set; if the distance from the first surface scanning point to the plane where the second surface scanning point is located in any two surface scanning points is less than a fourth preset value, and the included angle between the normal vector of the plane where the first surface scanning point is located and the normal vector of the plane where the second surface scanning point is located is less than a fourth preset angle, then the first surface scanning point and the second surface scanning point are in the same plane; obtaining at least three surface scanning points in the same plane, and constructing a surface feature according to the at least three surface scanning points.
[0100] In one embodiment, when the computer program is executed by a processor to implement the step of obtaining the reference line feature and the reference surface feature corresponding to the geographical location at the previous moment from a map, the following steps are further implemented: obtaining a plurality of candidate line features and a plurality of candidate surface features corresponding to the geographical location at the previous moment from the map; obtaining the position information of the constructed line feature and the position information of the constructed surface feature; screening out the reference line feature from the plurality of candidate line features according to the position information of the constructed line feature; and screening out the reference surface feature from the plurality of candidate surface features according to the position information of the constructed surface feature.
[0101] In one embodiment, when the computer program is executed by a processor to implement the step of outputting the pose of the constructed line feature and the pose of the constructed surface feature based on the association result, the following steps are further implemented: optimizing the six-degree-of-freedom pose of the constructed line feature based on the association result between the constructed line feature and the reference line feature to obtain the pose of the optimized constructed line feature; optimizing the six-degree-of-freedom pose of the constructed surface feature based on the association result between the constructed surface feature and the reference surface feature to obtain the pose of the optimized constructed surface feature; and outputting the pose of the constructed line feature and the pose of the constructed surface feature in a map representation manner.
[0102] Those of ordinary skill in the art can understand that all or part of the processes of implementing the methods in the above embodiments can be completed by instructing relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above methods. Among them, any reference to a memory, storage, database, or other medium used in the various embodiments provided in the present application can include non-volatile and / or volatile memories. Non-volatile memories can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memories can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), Rambus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and Rambus dynamic RAM (RDRAM), etc.
[0103] The technical features of the above embodiments can be combined arbitrarily. For the sake of concise description, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, it should be considered that the scope described in this specification is covered.
[0104] The above-described embodiments merely represent several implementation manners of the present application. The description is relatively specific and detailed, but it should not be construed as a limitation on the scope of the invention patent. It should be noted that for those of ordinary skill in the art, without departing from the concept of the present application, several deformations and improvements can still be made, and these all belong to the protection scope of the present application. Therefore, the protection scope of the patent of the present application shall be subject to the appended claims.
Claims
1. A method for map representation of target object positioning, the method comprising: Obtaining a point cloud set of a target object at the current moment and obtaining point features of each scan point in the point cloud set; Identifying line scan points and surface scan points in the point cloud set according to the point features of each scan point; Constructing a line feature through the line scan points and constructing a surface feature through the surface scan points; Obtaining a pre-constructed map and the geographical location of the target object at the previous moment, and obtaining a reference line feature and a reference surface feature corresponding to the geographical location at the previous moment from the map; Associating the constructed line feature with the reference line feature and associating the constructed surface feature with the reference surface feature, and outputting the pose of the constructed line feature and the pose of the constructed surface feature based on the association result, so as to represent the positioning information of the target object by using the map; Wherein, before the step of obtaining the point features of each scan point in the point cloud set, it further includes: Obtaining any scan point from the point cloud set; Obtaining the three-dimensional vector of the any scan point and the eigenvalue of each dimension vector; Calculating the linearity value and the planarity value of the any scan point according to the three-dimensional vector and the eigenvalue of each dimension vector; Determining the point feature of the any scan point according to the linearity value and the planarity value of the any scan point and the three-dimensional vector of the any scan point.
2. The method according to claim 1, wherein The identifying the line scan points and surface scan points in the point cloud set according to the point features of each scan point includes: If the linearity value of the any scan point is greater than a first preset value, and the included angle between the direction vector in the three-dimensional vector of the any scan point and the normal vector of the ground plane is greater than a first preset angle, then the any scan point is the line scan point; If the planarity value of the any scan point is greater than a second preset value, and the included angle between the normal vector in the three-dimensional vector of the any scan point and the normal vector of the ground plane is less than a second preset angle, then the any scan point is the surface scan point.
3. The method according to claim 1, characterized in that The constructing the line feature through the line scan points includes: Obtaining a line point set, where the line point set contains multiple line scan points; Obtaining any two line scan points from the line point set; If the distance from the first line scan point to the straight line where the second line scan point is located in the any two line scan points is less than a third preset value, and the included angle between the direction vector in the three-dimensional vector of the first line scan point and the direction vector in the three-dimensional vector of the second line scan point is less than a third preset angle, then constructing the line feature through the first line scan point and the second line scan point.
4. The method according to claim 1, wherein The constructing the surface feature through the surface scan points includes: Obtaining a surface point set, where the surface point set contains multiple surface scan points; Obtaining any two surface scan points from the surface point set; If the distance from the first surface scan point to the plane where the second surface scan point is located in the any two surface scan points is less than a fourth preset value, and the included angle between the normal vector of the plane where the first surface scan point is located and the normal vector of the plane where the second surface scan point is located is less than a fourth preset angle, then the first surface scan point and the second surface scan point are in the same plane; Obtain at least three surface scanning points on the same plane, and construct the surface feature based on the at least three surface scanning points.
5. The method according to claim 1, characterized in that, The obtaining of the reference line feature and the reference surface feature corresponding to the geographical location at the previous moment from the map includes: Obtain a plurality of candidate line features and a plurality of candidate surface features corresponding to the geographical location at the previous moment from the map; Obtain the position information of the constructed line feature and the position information of the constructed surface feature; Screen out the reference line feature from the plurality of candidate line features according to the position information of the constructed line feature; Screen out the reference surface feature from the plurality of candidate surface features according to the position information of the constructed surface feature.
6. The method according to claim 1, wherein The outputting of the pose of the constructed line feature and the pose of the constructed surface feature based on the association result includes: Based on the association result between the constructed line feature and the reference line feature, optimize the six-degree-of-freedom pose of the constructed line feature to obtain the pose of the optimized constructed line feature; Based on the association result between the constructed surface feature and the reference surface feature, optimize the six-degree-of-freedom pose of the constructed surface feature to obtain the pose of the optimized constructed surface feature; Output the pose of the constructed line feature and the pose of the constructed surface feature in a map representation manner.
7. A map representation device for target object localization, characterized in that, The device includes: A first acquisition module, configured to acquire a point cloud set of a target object at the current moment and acquire the point features of each scanning point in the point cloud set; An identification module, configured to identify line scanning points and surface scanning points in the point cloud set according to the point features of each scanning point; A construction module, configured to construct a line feature through the line scanning points and construct a surface feature through the surface scanning points; A second acquisition module, configured to acquire a pre-constructed map and the geographical location of the target object at the previous moment, and acquire the reference line feature and the reference surface feature corresponding to the geographical location at the previous moment from the map; An output module, configured to associate the constructed line feature with the reference line feature and associate the constructed surface feature with the reference surface feature, and output the pose of the constructed line feature and the pose of the constructed surface feature based on the association result, so as to represent the positioning information of the target object in a map; Wherein, before acquiring the point features of each scanning point in the point cloud set, it further includes: Acquire any scanning point from the point cloud set; Acquire the three-dimensional vector of the any scanning point and the eigenvalue of each dimension vector; Calculate the linearity value and the planarity value of the any scanning point according to the three-dimensional vector and the eigenvalue of each dimension vector; Determine the point feature of the any scanning point according to the linearity value and the planarity value of the any scanning point and the three-dimensional vector of the any scanning point.
8. A computer device, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 6.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the steps of the method according to any one of claims 1 to 6.
Citation Information
Patent Citations
Slam method and system based on laser radar point cloud and camera image data fusion
CN111563442A
Data processing method and device
CN113628256A