Vehicle positioning method, device, computer equipment and storage medium

By acquiring and integrating inertial navigation system data, vehicle chassis data and point cloud data, correcting the vehicle positioning posture and determining the positioning posture with point cloud data, the problem of insufficient vehicle positioning accuracy in tunnel scenarios is solved, high-precision and reliable vehicle positioning are achieved, and support for intelligent driving is provided.

CN114061570BActive Publication Date: 2025-04-04CHANGSHA INTELLIGENT DRIVING INST CORP LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202010758148.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-07-31
Publication Date
2025-04-04
Estimated Expiration
2040-07-31

AI Technical Summary

Technical Problem

In intelligent driving technology, it is difficult for the existing technology to achieve high-precision vehicle positioning in tunnel scenarios because the GNSS/INS combined navigation system cannot work normally, and the lidar positioning in the tunnel is prone to failure when the lidar is positioned in a single environment.

Method used

By obtaining inertial navigation system data, vehicle chassis data and point cloud data, the vehicle positioning posture is calculated and corrected, and the vehicle positioning posture is determined based on point cloud data to reduce the cumulative error of inertial navigation system solution.

Benefits of technology

It improves vehicle positioning accuracy, provides reliable positioning results in tunnel scenarios, and supports the needs of intelligent driving.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114061570B_ABST
    Figure CN114061570B_ABST
Patent Text Reader

Abstract

The present application relates to a vehicle positioning method, device, computer equipment and storage medium. The method comprises: obtaining vehicle positioning related data at the current moment, the vehicle positioning related data comprising: inertial navigation system data, vehicle chassis data and point cloud data; solving the vehicle posture at the current moment according to the inertial navigation system data to obtain the vehicle solved posture at the current moment; correcting the vehicle solved posture using the vehicle chassis data to obtain the first vehicle corrected posture at the current moment; determining the vehicle positioning posture at the current moment according to the first vehicle corrected posture and point cloud data. The use of this method can improve positioning accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of intelligent driving technology, and in particular to a vehicle positioning method, device, computer equipment and storage medium. Background Art

[0002] In intelligent driving technology, accurate positioning is the basis of perception, planning and control. In open scenarios, high-precision positioning mainly relies on the GNSS (Global Navigate Satellite System) / INS (Inertial Navigation System) combined navigation system. However, in tunnel scenarios, due to the inability to receive satellite signals normally, the positioning accuracy of the combined navigation system cannot meet the requirements of intelligent driving. LiDAR positioning is also one of the commonly used high-precision positioning methods, but due to the single environment and unclear longitudinal features in tunnel scenarios, the positioning algorithm based on LiDAR is prone to failure and cannot provide reliable positioning results for intelligent driving. Summary of the invention

[0003] Based on this, it is necessary to provide a vehicle positioning method, device, computer equipment and storage medium that can improve positioning accuracy in response to the above technical problems.

[0004] A vehicle positioning method, the method comprising:

[0005] Acquire vehicle positioning related data at the current moment, wherein the vehicle positioning related data includes: inertial navigation system data, vehicle chassis data and point cloud data;

[0006] Calculating the vehicle posture at the current moment according to the inertial navigation system data to obtain the calculated vehicle posture at the current moment;

[0007] Correcting the calculated vehicle posture using the vehicle chassis data to obtain the first vehicle corrected posture at the current moment;

[0008] The vehicle positioning posture at the current moment is determined according to the first vehicle corrected posture and the point cloud data.

[0009] A vehicle positioning device, comprising:

[0010] An acquisition module is used to acquire vehicle positioning related data at the current moment, wherein the vehicle positioning related data includes: inertial navigation system data, vehicle chassis data and point cloud data;

[0011] A calculation module, used for calculating the vehicle posture at the current moment according to the inertial navigation system data to obtain the calculated vehicle posture at the current moment;

[0012] A correction module, used to correct the calculated vehicle posture using the vehicle chassis data to obtain the first vehicle corrected posture at the current moment;

[0013] A positioning module is used to determine the vehicle positioning posture at the current moment according to the first vehicle corrected posture and the point cloud data.

[0014] A computer device comprises a memory and a processor, wherein the memory stores a computer program, and when the processor executes the computer program, the following steps are implemented:

[0015] Acquire vehicle positioning related data at the current moment, wherein the vehicle positioning related data includes: inertial navigation system data, vehicle chassis data and point cloud data;

[0016] Calculating the vehicle posture at the current moment according to the inertial navigation system data to obtain the calculated vehicle posture at the current moment;

[0017] Correcting the calculated vehicle posture using the vehicle chassis data to obtain the first vehicle corrected posture at the current moment;

[0018] The vehicle positioning posture at the current moment is determined according to the first vehicle corrected posture and the point cloud data.

[0019] A computer-readable storage medium stores a computer program, which, when executed by a processor, implements the following steps:

[0020] Acquire vehicle positioning related data at the current moment, wherein the vehicle positioning related data includes: inertial navigation system data, vehicle chassis data and point cloud data;

[0021] Calculating the vehicle posture at the current moment according to the inertial navigation system data to obtain the calculated vehicle posture at the current moment;

[0022] Correcting the calculated vehicle posture using the vehicle chassis data to obtain the first vehicle corrected posture at the current moment;

[0023] The vehicle positioning posture at the current moment is determined according to the first vehicle corrected posture and the point cloud data.

[0024] The above-mentioned vehicle positioning method, device, computer equipment and storage medium obtain the vehicle positioning related data at the current moment, and the vehicle positioning related data includes: inertial navigation system data, vehicle chassis data and point cloud data; solve the vehicle posture at the current moment according to the inertial navigation system data to obtain the vehicle solved posture at the current moment; use the vehicle chassis data to correct the vehicle solved posture to obtain the first vehicle corrected posture at the current moment; determine the vehicle positioning posture at the current moment according to the first vehicle corrected posture and point cloud data. Accordingly, using the vehicle chassis data and point cloud data to correct the vehicle posture solved by the inertial navigation system can reduce the cumulative error of the single inertial navigation system solution, thereby improving the positioning accuracy, and can be applied to vehicle positioning in tunnel scenarios, providing a more reliable positioning result for intelligent driving in tunnel scenarios. BRIEF DESCRIPTION OF THE DRAWINGS

[0025] Figure 1 A schematic diagram of a vehicle positioning method according to an embodiment;

[0026] Figure 2 is a structural block diagram of a vehicle positioning device in one embodiment;

[0027] Figure 3 is an internal structure diagram of a computer device in one embodiment;

[0028] Figure 4 FIG. 4 is a diagram showing the internal structure of a computer device in one embodiment. DETAILED DESCRIPTION

[0029] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.

[0030] The vehicle positioning method provided in the present application can be applied to a vehicle intelligent driving system, which includes a vehicle controller, an inertial navigation device, a chassis sensor and a laser radar. During vehicle driving, the vehicle controller can obtain data collected by the inertial navigation device, the chassis sensor and the laser radar respectively, and fuse these data to achieve real-time positioning of the vehicle.

[0031] In one embodiment, Figure 1 As shown, a vehicle positioning method is provided, which is described by taking the method applied to a vehicle controller as an example, and includes the following steps S102 to S108.

[0032] S102, obtaining vehicle positioning related data at the current moment, the vehicle positioning related data including: inertial navigation system data, vehicle chassis data and point cloud data.

[0033] Inertial navigation system data, vehicle chassis data and point cloud data can be collected by inertial navigation devices, chassis sensors and laser radar installed on the vehicle, respectively. Among them, inertial navigation system data may include but are not limited to vehicle angular velocity and vehicle acceleration, vehicle chassis data may include but are not limited to vehicle speed and vehicle angle, and point cloud data may be point cloud data within a certain range around the vehicle.

[0034] The inertial navigation system data, vehicle chassis data, and point cloud data may not be output synchronously and at the same frequency. The timestamp information of each data can be used to process the data so that each data is aligned in the time dimension. Specifically, the timestamp of the point cloud data can be used as the standard to perform time alignment on each data.

[0035] S104, calculating the vehicle posture at the current moment according to the inertial navigation system data to obtain the vehicle posture calculated at the current moment.

[0036] The vehicle posture includes vehicle position information and vehicle attitude information. The vehicle position information may be the coordinate information of the vehicle in a three-dimensional space coordinate system, which may be specifically represented by latitude, longitude, and altitude. The vehicle attitude information may represent the rotation relationship from the vehicle body coordinate system to the geographic coordinate system, which may be specifically represented by heading angle, pitch angle, and roll angle. In one embodiment, quaternions may be used to describe the rotation relationship from the vehicle body coordinate system to the geographic coordinate system, and the vehicle attitude information may be solved using the quaternion method.

[0037] S106, using the vehicle chassis data to correct the vehicle calculated posture to obtain a first vehicle corrected posture at the current moment.

[0038] Since the positioning method of the inertial navigation system is a deductive navigation, the error will increase over time, forming a cumulative error, resulting in a decrease in positioning accuracy. Based on this, the vehicle chassis data can be used to correct the pose solution result of the inertial navigation system to obtain the corrected vehicle pose.

[0039] S108, determining the vehicle positioning posture at the current moment according to the first vehicle corrected posture and the point cloud data.

[0040] Specifically, point cloud matching can be performed on the point cloud data collected by the laser radar at different times, and the first vehicle correction posture can be further corrected according to the point cloud matching result to obtain a more accurate vehicle positioning posture.

[0041] In the above vehicle positioning method, the vehicle positioning related data at the current moment is obtained, and the vehicle positioning related data includes: inertial navigation system data, vehicle chassis data and point cloud data; the vehicle posture at the current moment is solved according to the inertial navigation system data to obtain the vehicle solved posture at the current moment; the vehicle solved posture is corrected using the vehicle chassis data to obtain the first vehicle corrected posture at the current moment; the vehicle positioning posture at the current moment is determined according to the first vehicle corrected posture and point cloud data. Accordingly, the vehicle posture solved by the inertial navigation system is corrected using the vehicle chassis data and point cloud data, which can reduce the cumulative error solved by a single inertial navigation system, thereby improving the positioning accuracy, and can be applied to vehicle positioning in tunnel scenarios, providing a more reliable positioning result for intelligent driving in tunnel scenarios.

[0042] In one embodiment, the inertial navigation system data includes angular velocity information measured by a gyroscope and specific force information in a vehicle body coordinate system measured by an accelerometer, and the vehicle solution posture includes vehicle solution position information and vehicle solution attitude information; the step of solving the vehicle posture at the current moment according to the inertial navigation system data and obtaining the vehicle solution posture at the current moment may specifically include the following steps: obtaining a coordinate transformation matrix from the vehicle body coordinate system to the geographic coordinate system as the vehicle solution attitude information at the current moment according to the vehicle attitude information, angular velocity information and solution period at the previous moment; obtaining the vehicle acceleration in the geographic coordinate system according to the coordinate transformation matrix and the specific force information, and obtaining the vehicle solution speed at the current moment according to the vehicle speed, vehicle acceleration and solution period at the previous moment; obtaining the vehicle solution position information at the current moment according to the vehicle position information at the previous moment, the vehicle solution speed and solution period at the current moment.

[0043] Assume that the current moment is k and the vehicle position at the previous moment is P k-1 , speed is V k-1 , quaternions are used to describe the rotation relationship between the vehicle body coordinate system and the geographic coordinate system, the angular velocity information measured by the gyroscope is compensated for the error, and then the quaternion attitude differential equation is integrated using the Runge-Kutta equation to achieve the update of the quaternion. In this embodiment, the first-order Runge-Kutta equation is used. The recursive solution of the quaternion attitude differential equation is as follows:

[0044]

[0045] Among them, Q(k) and Q(k-1) represent the quaternion at time k and time k-1 respectively; Ω represents the antisymmetric matrix of the angular velocity vector after error compensation; T represents the solution period. Q(k) is normalized, and the coordinate transformation matrix from the vehicle body coordinate system to the geographic coordinate system at time k is calculated based on Q(k). Representation, also called attitude matrix.

[0046] Through the attitude matrix By transforming the specific force information measured by the accelerometer in the vehicle body coordinate system into the geographic coordinate system and eliminating the harmful acceleration, the vehicle acceleration in the geographic coordinate system can be obtained. The specific calculation formula is as follows:

[0047]

[0048] Among them, f n represents the vehicle acceleration in the geographic coordinate system; f b represents the specific force measured by the accelerometer; fe represents the harmful acceleration, which includes the Coriolis acceleration, centripetal acceleration and gravity acceleration. The recursive solution formula for the vehicle speed is as follows:

[0049]

[0050] Among them, V(k) and V(k-1) represent the velocity vector of the vehicle in the geographic coordinate system at time k and time k-1 respectively; T represents the solution period.

[0051] The vehicle position can be obtained by integrating the vehicle speed. The vehicle position is represented by latitude, longitude and altitude. The recursive solution formula is as follows:

[0052]

[0053]

[0054] h(k)=h(k-1)+V U (k-1)T

[0055] Where L(k) and L(k-1) represent the latitude of the vehicle at time k and time k-1 respectively; λ(k) and λ(k-1) represent the longitude of the vehicle at time k and time k-1 respectively; h(k) and h(k-1) represent the height of the vehicle at time k and time k-1 respectively; V E (k-1), V N (k-1) and V U (k-1) represents the velocity components of the vehicle in the east, north and sky directions in the geographic coordinate system at time k-1 respectively; R M (k) and R N (k) represents the meridian curvature radius and the meridian curvature radius, which can be updated according to the latitude; T represents the solution period.

[0056] In one embodiment, the vehicle chassis data includes: vehicle speed information and vehicle angle information; the step of using the vehicle chassis data to correct the vehicle's solved posture to obtain the first vehicle corrected posture at the current moment may specifically include the following steps: determining a state quantity based on the inertial navigation system solution data, and determining an observation quantity based on the vehicle chassis data, the inertial navigation system solution data including one or more of the vehicle's solved position information, the vehicle's solved attitude information, and the vehicle's solved speed information; according to the difference between the state quantity and the corresponding observation quantity, the vehicle's solved posture is corrected to obtain the first vehicle corrected posture at the current moment.

[0057] The vehicle speed information and vehicle angle information in the vehicle chassis data can be measured and obtained by the speed sensor in the chassis and the steering wheel angle sensor respectively. The vehicle chassis data and the inertial navigation system solution data can be understood as vehicle data obtained in two different ways. The vehicle chassis data represents the data directly measured by the hardware, and the inertial navigation system solution data represents the derived data. Combining these two parts of data to correct the inertial navigation system solution data can effectively reduce the derivation error.

[0058] Specifically, a Kalman filter system constructed by using state quantities and corresponding observation quantities can be used to implement correction of the vehicle's calculated posture using vehicle chassis data. The state quantities of the Kalman filter system may include but are not limited to position information, speed information, attitude information, position error, speed error, attitude angle error, and zero drift and zero bias of the gyroscope and accelerometer in the inertial navigation system. The observation quantities of the Kalman filter system may include but are not limited to speed information and angle information in the vehicle chassis data, and the difference between the vehicle speed and the wheel speed calculated by the inertial navigation system. The first vehicle corrected posture obtained by correcting the vehicle's calculated posture according to the difference between the state quantity and the corresponding observation quantity can more accurately reflect the vehicle's actual posture. Obtain the first vehicle corrected posture at the current moment (expressed by P′ k After the first vehicle corrected position and posture is obtained, the corrected position and posture of the first vehicle can be fed back to the solution of the inertial navigation system to improve the accuracy of the subsequent solution results of the inertial navigation system.

[0059] In one embodiment, after obtaining the first vehicle corrected posture at the current moment, motion compensation is performed on the point cloud data according to the first vehicle corrected posture to obtain the motion compensated point cloud data; the step of determining the vehicle positioning posture at the current moment according to the first vehicle corrected posture and the point cloud data may specifically be: determining the vehicle positioning posture at the current moment according to the first vehicle corrected posture and the motion compensated point cloud data.

[0060] The point cloud data at the current moment includes the point cloud obtained within the sampling period. For example, the current moment is moment k, and the point cloud data at moment k includes the point cloud collected within the time range from moment k-1 to moment k. The point cloud data can be motion compensated using the first vehicle corrected posture. Specifically, according to the vehicle posture P at moment k-1 k-1 And the first vehicle corrected position P′ at time k k The vehicle posture change ΔP from time k-1 to time k can be estimated k , combined with the acquisition time of each point cloud in the point cloud data, the vehicle posture change ΔP of each point cloud relative to time k is obtained by interpolation method ki (i=1,2,3,…,m, m represents the number of point clouds in the point cloud data), and finally the coordinates of each point cloud are calculated according to the vehicle posture change ΔP ki Transform and unify to the vehicle body coordinate system at time k to complete motion compensation. The coordinate transformation formula can be:

[0061] p i =ΔP ki *p′ i

[0062] Among them, p′ i represents the original coordinates of the i-th point cloud, p i Represents the coordinates of the i-th point cloud transformed to the vehicle body coordinate system at time k.

[0063] In this embodiment, the point cloud data is motion compensated by correcting the posture of the first vehicle, and the coordinates of all point clouds acquired at the current moment are unified to the vehicle body coordinate system at the current moment, thereby eliminating the motion information of the vehicle contained in the point cloud data within the sampling period, improving the accuracy of the point cloud position information, and then improving the accuracy of subsequent point cloud matching.

[0064] In one embodiment, the step of determining the vehicle positioning posture at the current moment based on the first vehicle corrected posture and the point cloud data may specifically include the following steps: matching the point cloud data with the target map based on the first vehicle corrected posture to obtain a transformation matrix from the point cloud data to the target map; determining the vehicle positioning posture at the current moment based on the transformation matrix and the first vehicle corrected posture.

[0065] Among them, the target map can be a pre-constructed map. For example, at the current moment, the vehicle is traveling on a certain target road section. The target map to be matched corresponding to the point cloud data at the current moment can be a pre-constructed map of the target road section, or it can be a local map in the map of the target road section. Specifically, according to the corrected posture of the first vehicle, a local map within the effective detection range of the laser radar can be selected from the map of the target road section as the target map for subsequent matching.

[0066] After obtaining the target map, the point cloud data can be matched with the target map to obtain a transformation matrix from the point cloud data to the target map. The transformation matrix is ​​used to further correct the first vehicle corrected posture to obtain a more reliable vehicle positioning posture.

[0067] In one embodiment, the step of matching the point cloud data with the target map according to the first vehicle corrected posture to obtain a transformation matrix from the point cloud data to the target map may specifically include the following steps: when the vehicle is outside the tunnel, performing coordinate transformation on the point cloud data according to the first vehicle corrected posture to obtain transformed point cloud data; matching the transformed point cloud data with the target map to obtain a first transformation matrix from the point cloud data to the target map, wherein the transformation matrix includes a first transformation matrix.

[0068] Specifically, it is possible to determine whether the vehicle is currently in the tunnel based on the first vehicle corrected position at the current moment and the tunnel entrance and exit positions marked in the map. When the vehicle is currently outside the tunnel (for example, at time k), the first vehicle corrected position (P′ k ) Convert the point cloud data to the map coordinate system, and then match it with the target map to obtain the first transformation matrix (using T r1 express).

[0069] In one embodiment, the step of matching the point cloud data with the target map according to the first vehicle corrected posture to obtain a transformation matrix from the point cloud data to the target map may specifically include the following steps: when the vehicle is in a tunnel, segmenting the point cloud data to obtain first point cloud data including a left tunnel wall point cloud, second point cloud data including a right tunnel wall point cloud, and third point cloud data including a ground point cloud; determining first available point cloud data according to the first point cloud data, the second point cloud data, and the third point cloud data; performing coordinate transformation on the first available point cloud data according to the first vehicle corrected posture to obtain transformed first available point cloud data; matching the transformed first available point cloud data with the target map to obtain a second transformation matrix from the point cloud data to the target map, wherein the transformation matrix includes a second transformation matrix.

[0070] When the vehicle is in the tunnel at the current moment (for example, moment k), the point cloud data is divided into three parts. Specifically, in the vehicle body coordinate system, the point cloud data can be divided into left and right parts along the vehicle's forward direction to obtain the first point cloud data containing the left tunnel wall point cloud and the second point cloud data containing the right tunnel wall point cloud. At the same time, the third point cloud data containing the ground point cloud is divided according to the installation position of the laser radar.

[0071] Perform plane fitting on the first point cloud data to obtain a first plane equation, and select a point cloud whose distance from the left tunnel wall plane is within a first preset range from the first point cloud data as the left tunnel wall plane point cloud corresponding to the fitted left tunnel wall plane. Perform plane fitting on the second point cloud data to obtain a second plane equation, and select a point cloud whose distance from the right tunnel wall plane is within a second preset range from the second point cloud data as the right tunnel wall plane point cloud corresponding to the fitted right tunnel wall plane. The first preset range and the second preset range can be empirical values ​​(e.g., a range of 0.1 m), or can be set based on actual needs.

[0072] The third point cloud data is plane-fitted to obtain the third plane equation, which corresponds to the fitted ground plane. According to the third plane equation, the left tunnel wall plane point cloud and the right tunnel wall plane point cloud are projected onto the ground plane to obtain the first available point cloud data, which represents the point cloud data used for subsequent matching. According to the first vehicle corrected posture (P′ k ) The first available point cloud data is converted into the map coordinate system, and then matched with the target map to obtain the second transformation matrix (using T r2 express).

[0073] In this embodiment, when the vehicle is in a tunnel, the tunnel wall point cloud is filtered out from the point cloud data, and the tunnel wall point cloud is further projected onto the ground plane for matching. This can reduce point cloud mismatches caused by unclear longitudinal features in the tunnel, while avoiding mismatches caused by missing areas and diagonal textures in the tunnel wall point cloud, thereby improving the matching accuracy in the tunnel scene.

[0074] In one embodiment, when the vehicle is in a tunnel, a feature point cloud in the point cloud data can also be extracted. When the feature point cloud contains a valid feature point cloud corresponding to the tunnel feature, the second available point cloud data is determined based on the first available point cloud data and the valid feature point cloud.

[0075] Among them, tunnel features may include specific scenes and specific objects. Specific scenes may specifically be spatial areas in the tunnel where the width or height changes, which are significantly different from general road sections, such as emergency parking areas, tunnel exits, tunnel entrances, etc. Specific objects may specifically be other artificially added and easily identifiable detection objects scattered in the tunnel in addition to walls, pavement, and curbs, such as ventilation ducts, emergency doors, emergency telephone boxes, fire extinguisher box doors, etc. The second available point cloud data includes the first available point cloud data and valid feature point clouds for subsequent matching.

[0076] In this embodiment, when the vehicle is in a tunnel, the point cloud data used for matching includes not only the first available point cloud data corresponding to the tunnel wall, but also the effective feature point cloud corresponding to the specific scenes and specific objects in the tunnel, which helps to further improve the matching accuracy in the tunnel scene.

[0077] In one embodiment, after obtaining the second transformation matrix and the second available point cloud data, the following processing can also be performed: according to the corrected posture of the first vehicle, the second available point cloud data is coordinate transformed to obtain the transformed second available point cloud data; the transformed second available point cloud data is matched with the target map to obtain the third transformation matrix from the point cloud data to the target map, and the transformation matrix includes the third transformation matrix.

[0078] According to the first vehicle corrected posture (P ′ k ) The second available point cloud data is converted into the map coordinate system, and then matched with the target map to obtain the third transformation matrix (using T r3 express).

[0079] In one embodiment, the step of determining the vehicle positioning posture at the current moment based on the transformation matrix and the first vehicle corrected posture may specifically include the following steps: obtaining the second vehicle corrected posture based on the transformation matrix and the first vehicle corrected posture; determining the vehicle positioning posture at the current moment based on the first vehicle corrected posture and the second vehicle corrected posture.

[0080] When the vehicle is outside the tunnel, according to the first transformation matrix (T r1 ) and the first vehicle corrected position (P′ k ), obtain the corrected position of the second vehicle (using P k_lidar The specific calculation formula is as follows: k_lidar =T r1 *P′ k .

[0081] When the vehicle is in a tunnel and the point cloud data does not contain valid feature point clouds, according to the second transformation matrix (T r2 ) and the first vehicle corrected position (P′ k ), and obtain the corrected position and posture of the second vehicle (P k_lidar ), the specific calculation formula is as follows: k_lidar =T r2 *P′ k .

[0082] When the vehicle is in a tunnel and the point cloud data contains valid feature point clouds, according to the third transformation matrix (T r3 ) and the first vehicle corrected position (P′ k ), and obtain the corrected position and posture of the second vehicle (P k_lidar ), the specific calculation formula is as follows:k_lidar =(T r3 *P′ k ).

[0083] In this embodiment, the second vehicle corrected posture represents the vehicle posture obtained by further correcting the first vehicle corrected posture using the laser point cloud matching result. The vehicle positioning posture at the current moment is jointly determined based on the first vehicle corrected posture and the second vehicle corrected posture, which can further ensure the positioning accuracy.

[0084] In one embodiment, the step of determining the vehicle positioning posture at the current moment according to the first vehicle corrected posture and the second vehicle corrected posture may specifically include the following steps: when the difference between the first vehicle corrected posture and the second vehicle corrected posture is greater than a difference threshold, the first vehicle corrected posture is used as the vehicle positioning posture at the current moment; when the difference between the first vehicle corrected posture and the second vehicle corrected posture is less than or equal to the difference threshold, the first vehicle corrected posture is corrected according to the second vehicle corrected posture to obtain the vehicle positioning posture at the current moment.

[0085] The second vehicle corrected position (P k_lidar ) and the first vehicle corrected position (P′ k ), when at least one of the difference between the positions and postures of the two is greater than the corresponding difference threshold, the laser point cloud matching result is determined to be unreliable, and the first vehicle corrected posture (P′ k ) is used as the vehicle positioning posture at the current moment. When the position and posture differences of the two are less than or equal to the corresponding difference threshold, the laser point cloud matching result is determined to be credible, and the second vehicle corrected posture (P k_lidar ) is fed back to the Kalman filter system as an observation quantity, and the Kalman filter system is updated with the first vehicle corrected posture as the state quantity, and the vehicle posture output by the updated Kalman filter system is used as the vehicle positioning posture at the current moment.

[0086] In this embodiment, the corrected posture of the first vehicle and the corrected posture of the second vehicle are verified, and the reliable corrected posture is fed back to the Kalman filter system as an observation quantity to ensure the accuracy of the observation quantity input to the Kalman filter system and improve the stability and accuracy of the positioning output.

[0087] In one embodiment, a vehicle positioning method is provided, comprising the following steps S1 to S25.

[0088] S1, obtaining vehicle positioning related data at the current moment, the vehicle positioning related data includes: inertial navigation system data, vehicle chassis data and point cloud data;

[0089] S2, solving the vehicle posture at the current moment according to the inertial navigation system data to obtain the solved vehicle posture at the current moment;

[0090] S3, using the vehicle chassis data to correct the vehicle calculated posture to obtain a first vehicle corrected posture at the current moment;

[0091] S4, performing motion compensation on the point cloud data according to the corrected posture of the first vehicle;

[0092] S5, selecting a target map to be matched according to the corrected position and posture of the first vehicle;

[0093] S6, determine whether the vehicle is in a tunnel, if not, proceed to steps S7-S9 and S23-S25, if yes, proceed to steps S10-S25;

[0094] S7, performing coordinate transformation on the point cloud data according to the corrected position and posture of the first vehicle to obtain transformed point cloud data;

[0095] S8, matching the converted point cloud data with the target map to obtain a first conversion matrix from the point cloud data to the target map;

[0096] S9, obtaining a corrected posture of the second vehicle according to the first transformation matrix and the corrected posture of the first vehicle;

[0097] S10, segmenting the point cloud data to obtain first point cloud data including a left tunnel wall point cloud, second point cloud data including a right tunnel wall point cloud, and third point cloud data including a ground point cloud;

[0098] S11, performing plane fitting on the first point cloud data, the second point cloud data, and the third point cloud data respectively to obtain a left tunnel wall plane, a right tunnel wall plane, and a ground plane;

[0099] S12, determining the point cloud of the left tunnel wall plane according to the point cloud whose distance from the left tunnel wall plane is within the first preset range in the first point cloud data; determining the point cloud of the right tunnel wall plane according to the point cloud whose distance from the right tunnel wall plane is within the second preset range in the second point cloud data;

[0100] S13, projecting the plane point cloud of the left tunnel wall and the plane point cloud of the right tunnel wall onto the ground plane to obtain first available point cloud data;

[0101] S14, extracting feature point clouds from the point cloud data;

[0102] S15, determine whether the feature point cloud contains a valid feature point cloud, if not, proceed to steps S16-S18 and S23-S25, if yes, proceed to steps S19-S25;

[0103] S16, performing coordinate transformation on the first available point cloud data according to the corrected position and posture of the first vehicle to obtain transformed first available point cloud data;

[0104] S17, matching the converted first available point cloud data with the target map to obtain a second conversion matrix from the first available point cloud data to the target map;

[0105] S18, obtaining a second vehicle corrected posture according to the second transformation matrix and the first vehicle corrected posture;

[0106] S19, determining second available point cloud data according to the first available point cloud data and the valid feature point cloud;

[0107] S20, performing coordinate transformation on the second available point cloud data according to the corrected position and posture of the first vehicle to obtain transformed second available point cloud data;

[0108] S21, matching the converted second available point cloud data with the target map to obtain a third conversion matrix from the second available point cloud data to the target map;

[0109] S22, obtaining a corrected posture of the second vehicle according to the third transformation matrix and the corrected posture of the first vehicle;

[0110] S23, determine whether the difference between the first vehicle corrected posture and the second vehicle corrected posture is greater than a difference threshold, if so, proceed to step S24, if not, proceed to step S25.

[0111] S24, using the first vehicle corrected posture as the vehicle positioning posture at the current moment;

[0112] S25, correcting the first vehicle corrected posture according to the second vehicle corrected posture to obtain the vehicle positioning posture at the current moment.

[0113] The specific definition of steps S1-S25 can refer to the above-mentioned embodiment, which will not be repeated here. In this embodiment, the vehicle posture solved by the inertial navigation system is corrected using the vehicle chassis data and the point cloud data, which can reduce the cumulative error solved by a single inertial navigation system, thereby improving the positioning accuracy. When the vehicle is in a tunnel, the tunnel wall point cloud is screened out from the point cloud data, and the tunnel wall point cloud is further projected onto the ground plane for subsequent matching, which can reduce the mismatch of the point cloud caused by the unclear longitudinal features in the tunnel, and avoid the mismatch caused by the missing areas and the oblique texture in the tunnel wall point cloud, which helps to improve the matching accuracy in the tunnel scene and ensure the lateral accuracy and heading accuracy of the vehicle positioning. When the vehicle is in a tunnel, the point cloud data used for matching can also include effective feature point clouds corresponding to specific scenes and specific objects in the tunnel, which helps to further improve the matching accuracy in the tunnel scene and ensure the longitudinal accuracy of the vehicle positioning.

[0114] In one embodiment, a method for generating a target map for matching may include the following steps: obtaining map-related data for a preset number of moments while the vehicle is traveling on a target road section, the map-related data at each moment including: inertial navigation system data, vehicle chassis data, point cloud data, and vehicle initial posture; determining the optimal posture of the vehicle at each moment based on the map-related data at each moment; and generating a target map corresponding to the target road section based on the optimal posture of the vehicle at each moment.

[0115] When applied to vehicle positioning in a tunnel scenario, the target road section may be a target tunnel section. Specifically, the target tunnel section starts when the vehicle has not entered the tunnel and the positioning result is accurate, and ends when the vehicle exits the tunnel and the positioning result becomes accurate again. The positioning result is provided by a high-precision positioning device based on a global navigation satellite system (GNSS), which may be, but is not limited to, an integrated navigation device. The positioning accuracy may be determined by setting appropriate thresholds based on relevant parameters such as covariance and confidence provided by the positioning device. The initial position of the vehicle may be the positioning result output by the integrated navigation device.

[0116] In one embodiment, the step of determining the optimal posture of the vehicle at each moment based on the map-related data at each moment may specifically include the following steps: for the map-related data at each moment, performing the following processing: solving the vehicle posture at that moment based on the inertial navigation system data to obtain the solved posture of the vehicle at that moment, correcting the solved posture of the vehicle using the vehicle chassis data to obtain the corrected posture of the vehicle at that moment; determining the vehicle posture transformation amount based on the vehicle initial posture at the previous moment and the vehicle corrected posture at that moment; matching the point cloud data at that moment with the target point cloud data based on the corrected posture of the vehicle at that moment to obtain a fourth transformation matrix from the point cloud data at that moment to the target point cloud data; determining the optimal posture of the vehicle at that moment based on the vehicle posture transformation amount and the fourth transformation matrix.

[0117] Assume that a total of n map-related data are collected, and the initial position of the vehicle at time k is P k Indicates that k = 1, 2, 3, ..., n. The specific calculation method of the vehicle solved posture, vehicle corrected posture, and vehicle posture change at each moment can refer to the above embodiment and will not be repeated here.

[0118] For each point cloud data at a certain moment, the corresponding target point cloud data to be matched may include but is not limited to the point cloud data at the moment before the moment, the point cloud data at the Nth moment before the moment, or the point cloud data at the Nth moment before the moment. For example, the point cloud data at moment k can be matched with the point cloud data at moment k-1 to obtain the transformation matrix T from the point cloud data at moment k to the point cloud data at moment k-1. k / k-1, or match the point cloud data at time k with the point cloud data at time ki to obtain the transformation matrix T from the point cloud data at time k to the point cloud data at time ki k / k-i , or match the point cloud data at time k with the local map generated by the point cloud data from time kj to time k-1, and obtain the transformation matrix T from the point cloud data at time k to the local map generated by the point cloud data from time kj to time k-1 k / j , the fourth transformation matrix may include the above transformation matrix T k / k-1 , T k / k-i , T k / j One or more of the fourth transformation matrix can be used as an optimization constraint for subsequent calculation of the optimal vehicle posture.

[0119] In one embodiment, the vehicle travels on the target road section multiple times, and collects data multiple times during the multiple travels to obtain richer constraint relationships. In this case, a large number of fourth conversion matrices obtained by point cloud matching can be obtained, and some unreliable conversion matrices may exist in these fourth conversion matrices, which need to be filtered out. Specifically, the following processing can be performed: obtain the time information of the point cloud data corresponding to each fourth conversion matrix, and the first displacement contained in each fourth conversion matrix; obtain the second displacement according to the time information and the inertial navigation system data; obtain the third displacement according to the time information and the vehicle chassis data; according to the comparison results of the first displacement, the second displacement and the third displacement, the fourth conversion matrix is ​​screened to obtain the screened conversion matrix. The step of determining the optimal posture of the vehicle at this moment according to the vehicle posture transformation and the fourth conversion matrix can be specifically: determining the optimal posture of the vehicle at this moment according to the vehicle posture transformation and the screened conversion matrix.

[0120] Between two determined time points, the position change (displacement) and angle change obtained by any one of the inertial navigation system data, vehicle chassis data, and point cloud matching result data should be approximate. It can be understood that when the difference between the position change obtained by the inertial navigation system solution and the position change obtained by the point cloud matching exceeds the preset value, it can be considered that at least one of the position change results is wrong. In this embodiment, it is considered that the reliability of the second displacement obtained from the inertial navigation system data and the third displacement obtained from the vehicle chassis data is higher than the first displacement in the point cloud matching result data. When the difference between the first displacement and the second displacement or the third displacement is greater than the preset value, the fourth transformation matrix corresponding to the first displacement is filtered out, thereby filtering out unreliable constraint relationships and improving the accuracy of subsequent vehicle optimal posture calculation results.

[0121] In one embodiment, map-related data is obtained when the vehicle passes the same position in the target road section multiple times, and loop detection constraints are obtained based on the multiple map-related data; the step of determining the optimal posture of the vehicle at that moment based on the vehicle posture change amount and the filtered transformation matrix can specifically be: determining the optimal posture of the vehicle at that moment based on the vehicle posture change amount, the filtered transformation matrix and the loop detection constraints.

[0122] The loop detection constraint represents the conversion relationship between multiple sets of point cloud data collected at the same location. When the target road section is a target tunnel section, the loop detection constraint can be established using special areas in the tunnel. The special areas may include but are not limited to emergency parking areas in the tunnel, tunnel exits, tunnel entrances, and landmarks in the tunnel.

[0123] Using the vehicle posture change, the filtered transformation matrix and the loop detection constraint as the optimization constraint, the initial posture P of the vehicle at each moment is k (k=1,2,3,…,n) is used as the optimization variable to construct the optimization problem. The error vector is expressed as:

[0124] e ij (P i ,P j ,z i / j )=P i -z i / j P j i,j∈1,2,3,...,n

[0125] Among them, z i / j Indicates P j To P i The objective function is constructed as follows:

[0126]

[0127] Among them, Ω ij Indicates the error e ij The weights are called information matrices. The objective function F is solved by nonlinear optimization methods to minimize the error and obtain the optimal vehicle pose estimation P″ k , k = 1, 2, 3, …, n, and the point cloud data is transformed into the geographic coordinate system through the optimal vehicle posture, so that a high-precision map of the target tunnel section can be obtained.

[0128] It should be understood that although Figure 1 The steps in the flowchart are shown in sequence as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified 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, Figure 1At least part of the steps may include multiple steps or multiple stages. These steps or stages are not necessarily performed at the same time, but can be performed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed in turn or alternately with other steps or at least part of the steps or stages in other steps.

[0129] In one embodiment, Figure 2 As shown, a vehicle positioning device 200 is provided, comprising: an acquisition module 210, a solution module 220, a correction module 230 and a positioning module 240, wherein:

[0130] The acquisition module 210 is used to acquire vehicle positioning related data at the current moment, and the vehicle positioning related data includes: inertial navigation system data, vehicle chassis data and point cloud data.

[0131] The solving module 220 is used to solve the vehicle posture at the current moment according to the inertial navigation system data to obtain the solved vehicle posture at the current moment.

[0132] The correction module 230 is used to correct the vehicle's calculated posture using the vehicle chassis data to obtain the first vehicle corrected posture at the current moment.

[0133] The positioning module 240 is used to determine the vehicle positioning posture at the current moment according to the first vehicle corrected posture and point cloud data.

[0134] In one embodiment, the inertial navigation system data includes angular velocity information measured by a gyroscope and specific force information in a vehicle body coordinate system measured by an accelerometer; the solution module 220 is specifically used to: obtain a coordinate transformation matrix from the vehicle body coordinate system to the geographic coordinate system as the vehicle solution posture information at the current moment according to the vehicle posture information, angular velocity information and solution period at the previous moment; obtain the vehicle acceleration in the geographic coordinate system according to the coordinate transformation matrix and the specific force information, and obtain the vehicle solution speed at the current moment according to the vehicle speed, vehicle acceleration and solution period at the previous moment; obtain the vehicle solution position information at the current moment according to the vehicle position information at the previous moment, the vehicle solution speed and solution period at the current moment; the vehicle solution posture includes the vehicle solution position information and the vehicle solution posture information.

[0135] In one embodiment, the vehicle chassis data includes: vehicle speed information and vehicle angle information; the correction module 230 is specifically used to: determine the state quantity based on the inertial navigation system solution data, and determine the observation quantity based on the vehicle chassis data, the inertial navigation system solution data includes one or more of the vehicle solution position information, vehicle solution attitude information, and vehicle solution speed information; according to the difference between the state quantity and the corresponding observation quantity, the vehicle solution posture is corrected to obtain the first vehicle corrected posture at the current moment.

[0136] In one embodiment, the device also includes a motion compensation module, which is used to perform motion compensation on the point cloud data according to the corrected posture of the first vehicle to obtain the point cloud data after motion compensation; the positioning module 240 is specifically used to determine the vehicle positioning posture at the current moment according to the corrected posture of the first vehicle and the point cloud data after motion compensation.

[0137] In one embodiment, the positioning module 240 includes: a matching unit and a positioning unit; the matching unit is used to match the point cloud data with the target map according to the corrected posture of the first vehicle to obtain a transformation matrix from the point cloud data to the target map; the positioning unit is used to determine the vehicle positioning posture at the current moment according to the transformation matrix and the corrected posture of the first vehicle.

[0138] In one embodiment, the matching unit is specifically used to: when the vehicle is outside the tunnel, perform coordinate transformation on the point cloud data according to the first vehicle corrected posture to obtain transformed point cloud data; match the transformed point cloud data with the target map to obtain a first transformation matrix from the point cloud data to the target map, and the transformation matrix includes a first transformation matrix.

[0139] In one embodiment, the matching unit is specifically used to: when the vehicle is in the tunnel, segment the point cloud data to obtain first point cloud data including left tunnel wall point cloud, second point cloud data including right tunnel wall point cloud and third point cloud data including ground point cloud; determine first available point cloud data according to the first point cloud data, the second point cloud data and the third point cloud data; perform coordinate transformation on the first available point cloud data according to the corrected posture of the first vehicle to obtain the transformed first available point cloud data; match the transformed first available point cloud data with the target map to obtain a second transformation matrix from the first available point cloud data to the target map, wherein the transformation matrix includes the second transformation matrix.

[0140] In one embodiment, when the matching unit determines the first available point cloud data based on the first point cloud data, the second point cloud data and the third point cloud data, it is specifically used to: perform plane fitting on the first point cloud data, the second point cloud data and the third point cloud data, respectively, to obtain a left tunnel wall plane, a right tunnel wall plane and a ground plane; determine the left tunnel wall plane point cloud based on the point cloud in the first point cloud data whose distance to the left tunnel wall plane is within a first preset range; determine the right tunnel wall plane point cloud based on the point cloud in the second point cloud data whose distance to the right tunnel wall plane is within a second preset range; project the left tunnel wall plane point cloud and the right tunnel wall plane point cloud onto the ground plane to obtain the first available point cloud data.

[0141] In one embodiment, the matching unit is also used to: extract a feature point cloud from the point cloud data when the vehicle is in a tunnel; and determine the second available point cloud data based on the first available point cloud data and the valid feature point cloud when the feature point cloud contains a valid feature point cloud corresponding to the tunnel feature.

[0142] In one embodiment, the matching unit is also used to: perform coordinate transformation on the second available point cloud data according to the corrected posture of the first vehicle and the second transformation matrix to obtain the transformed second available point cloud data; match the transformed second available point cloud data with the target map to obtain a third transformation matrix from the second available point cloud data to the target map, and the transformation matrix includes the third transformation matrix.

[0143] In one embodiment, the positioning unit is specifically used to: obtain the second vehicle corrected posture according to the transformation matrix and the first vehicle corrected posture; when the difference between the first vehicle corrected posture and the second vehicle corrected posture is greater than the difference threshold, use the first vehicle corrected posture as the vehicle positioning posture at the current moment; when the difference between the first vehicle corrected posture and the second vehicle corrected posture is less than or equal to the difference threshold, correct the first vehicle corrected posture according to the second vehicle corrected posture to obtain the vehicle positioning posture at the current moment.

[0144] In one embodiment, the device further includes a map generation module for generating a target map. The map generation module includes: an acquisition unit, a determination unit, and a generation unit; the acquisition unit is used to acquire map-related data of a preset number of moments in the process of the vehicle traveling on the target road section, and the map-related data at each moment includes: inertial navigation system data, vehicle chassis data, point cloud data, and vehicle initial posture; the determination unit is used to determine the optimal posture of the vehicle at each moment based on the map-related data at each moment; the generation unit is used to generate a target map corresponding to the target road section based on the optimal posture of the vehicle at each moment.

[0145] In one embodiment, the determination unit is specifically used to: perform the following processing on the map-related data at each moment: solve the vehicle posture at that moment according to the inertial navigation system data to obtain the solved vehicle posture at that moment, correct the solved vehicle posture using the vehicle chassis data to obtain the corrected vehicle posture at that moment; determine the vehicle posture change amount according to the vehicle initial posture at the previous moment and the corrected vehicle posture at that moment; match the point cloud data at that moment with the target point cloud data according to the corrected vehicle posture at that moment to obtain the fourth transformation matrix from the point cloud data at that moment to the target point cloud data; determine the optimal posture of the vehicle at that moment according to the vehicle posture change amount and the fourth transformation matrix.

[0146] In one embodiment, the determination unit is further used to: obtain the time information of the point cloud data corresponding to each fourth conversion matrix, and the first displacement contained in each fourth conversion matrix; obtain the second displacement according to the time information and the inertial navigation system data; obtain the third displacement according to the time information and the vehicle chassis data; and screen the fourth conversion matrix according to the comparison results of the first displacement, the second displacement and the third displacement to obtain the screened conversion matrix. When the determination unit determines the optimal posture of the vehicle at this moment according to the vehicle posture transformation and the fourth conversion matrix, it is specifically used to: determine the optimal posture of the vehicle at this moment according to the vehicle posture transformation and the screened conversion matrix.

[0147] In one embodiment, the determination unit is further used to: obtain map-related data when the vehicle passes the same position in the target road section multiple times, and obtain loop detection constraints based on the multiple map-related data. When the determination unit determines the optimal posture of the vehicle at that moment based on the vehicle posture change amount and the filtered conversion matrix, it is specifically used to: determine the optimal posture of the vehicle at that moment based on the vehicle posture change amount, the filtered conversion matrix and the loop detection constraints.

[0148] The specific definition of the vehicle positioning device can be found in the definition of the vehicle positioning method above, which will not be repeated here. Each module in the above-mentioned vehicle positioning device can be implemented in whole or in part by software, hardware and a combination thereof. The above-mentioned modules can be embedded in or independent of the processor in the computer device in the form of hardware, or can be stored in the memory of the computer device in the form of software, so that the processor can call and execute the operations corresponding to the above modules.

[0149] In one embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as follows: Figure 3As shown. The computer device includes a processor, a memory and a network interface 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, a computer program and a database. 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, a vehicle positioning method is implemented.

[0150] In one embodiment, a computer device is provided. The computer device may be a terminal, and its internal structure diagram may be as follows: Figure 4 As shown. The computer device includes a processor, a memory, a communication 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 communication interface of the computer device is used to communicate with an external terminal in a wired or wireless manner, and the wireless manner can be achieved through WIFI, an operator network, NFC (near field communication) or other technologies. When the computer program is executed by the processor, a vehicle positioning method is implemented. The display screen of the computer device can be a liquid crystal display screen or an electronic ink display screen, and the input device of the computer device can be a touch layer covering the display screen, or a button, a trackball or a touch pad set on the computer device housing, or an external keyboard, touch pad or mouse, etc.

[0151] Those skilled in the art will understand that Figure 3 or Figure 4 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.

[0152] In one embodiment, a computer device is provided, including a memory and a processor. The memory stores a computer program, and the processor implements the steps in the above-mentioned various method embodiments when executing the computer program.

[0153] 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 in each of the above method embodiments are implemented.

[0154] In one embodiment, a computer program product or computer program is provided, the computer program product or computer program includes computer instructions, the computer instructions are stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device performs the steps in the above-mentioned various method embodiments.

[0155] It should be understood that the terms "first", "second", etc. in the above embodiments are only used for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features.

[0156] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and 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-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory or optical memory, etc. Volatile memory can include random access memory (RAM) or external cache memory. As an illustration and not limitation, RAM can be in various forms, such as static random access memory (SRAM) or dynamic random access memory (DRAM).

[0157] The technical features of the above embodiments may be arbitrarily combined. To make the description concise, 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, they should be considered to be within the scope of this specification.

[0158] The above-mentioned embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be understood as limiting the scope of the invention patent. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, 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 attached claims.

Claims

1. A vehicle positioning method, characterized in that: The method comprises: Acquire vehicle positioning related data at the current moment, wherein the vehicle positioning related data includes: inertial navigation system data, vehicle chassis data and point cloud data; Calculating the vehicle posture at the current moment according to the inertial navigation system data to obtain the calculated vehicle posture at the current moment; Correcting the calculated vehicle posture using the vehicle chassis data to obtain the first vehicle corrected posture at the current moment; Determine the vehicle positioning posture at the current moment according to the first vehicle corrected posture and the conversion matrix from the point cloud data to the target map; The method for obtaining the conversion matrix from the point cloud data to the target map includes: When the vehicle is in the tunnel, segmenting the point cloud data to obtain first point cloud data including a left tunnel wall point cloud, second point cloud data including a right tunnel wall point cloud, and third point cloud data including a ground point cloud; Performing plane fitting on the first point cloud data, the second point cloud data, and the third point cloud data respectively to obtain a left tunnel wall plane, a right tunnel wall plane, and a ground plane; Determine a point cloud of a left tunnel wall plane according to a point cloud in the first point cloud data whose distance from the left tunnel wall plane is within a first preset range; Determine a right tunnel wall plane point cloud according to a point cloud in the second point cloud data whose distance from the right tunnel wall plane is within a second preset range; Projecting the left tunnel wall plane point cloud and the right tunnel wall plane point cloud onto the ground plane to obtain first available point cloud data; Matching the first available point cloud data with the target map to obtain a second transformation matrix from the first available point cloud data to the target map; The transformation matrix includes the second transformation matrix.

2. The method according to claim 1, characterized in that The method further comprises: When the vehicle is outside the tunnel, coordinate transformation is performed on the point cloud data according to the first vehicle corrected posture to obtain transformed point cloud data; the transformed point cloud data is matched with the target map to obtain a first transformation matrix from the point cloud data to the target map; The transformation matrices include the first transformation matrix.

3. The method according to claim 1, characterized in that After determining the first available point cloud data and before matching the first available point cloud data with the target map, the method further includes the following steps: The first available point cloud data is coordinate-transformed according to the first vehicle corrected position and posture to obtain transformed first available point cloud data.

4. The method according to claim 1, characterized in that: It is determined whether the vehicle is currently in the tunnel based on the first vehicle corrected position at the current moment and the tunnel entrance and exit positions marked in the map.

5. The method according to claim 1, characterized in that Also includes: When the vehicle is in the tunnel, extracting a feature point cloud from the point cloud data; When the feature point cloud includes a valid feature point cloud corresponding to the tunnel feature, second available point cloud data is determined according to the first available point cloud data and the valid feature point cloud.

6. The method according to claim 5, characterized in that The method further comprises: According to the first vehicle corrected position and posture, coordinate transformation is performed on the second available point cloud data to obtain transformed second available point cloud data; The converted second available point cloud data is matched with the target map to obtain a third conversion matrix from the second available point cloud data to the target map, wherein the conversion matrix also includes the third conversion matrix.

7. The method according to any one of claims 1 to 6, characterized in that Determining the vehicle positioning posture at the current moment according to the first vehicle corrected posture and the conversion matrix from the point cloud data to the target map includes: Obtaining a second vehicle corrected posture according to the transformation matrix and the first vehicle corrected posture; When the difference between the first vehicle corrected posture and the second vehicle corrected posture is greater than a difference threshold, using the first vehicle corrected posture as the vehicle positioning posture at the current moment; When the difference between the first vehicle corrected posture and the second vehicle corrected posture is less than or equal to the difference threshold, the first vehicle corrected posture is corrected according to the second vehicle corrected posture to obtain the vehicle positioning posture at the current moment.

8. The method according to any one of claims 1 to 6, characterized in that: The method for generating the target map includes: Acquire map-related data at a preset number of moments in the process of the vehicle traveling on the target road section, wherein the map-related data at each moment includes: inertial navigation system data, vehicle chassis data, point cloud data, and vehicle initial posture; Determine the optimal position of the vehicle at each moment based on the map-related data at each moment; Based on the optimal posture of the vehicle at each moment, a target map corresponding to the target road section is generated.

9. The method according to claim 8, characterized in that According to the map-related data at each moment, the optimal posture of the vehicle at each moment is determined, including: for the map-related data at each moment, the following processing is performed: Solving the vehicle posture at that moment according to the inertial navigation system data to obtain the vehicle posture at that moment, and correcting the vehicle posture at that moment using the vehicle chassis data to obtain the vehicle posture at that moment; Determine the vehicle posture change amount according to the vehicle initial posture at the previous moment and the vehicle corrected posture at this moment; According to the corrected posture of the vehicle at that moment, matching the point cloud data at that moment with the target point cloud data, to obtain a fourth conversion matrix from the point cloud data at that moment to the target point cloud data; The optimal posture of the vehicle at that moment is determined according to the vehicle posture change amount and the fourth conversion matrix.

10. The method according to claim 9, characterized in that Also includes: Acquire time information of the point cloud data corresponding to each of the fourth conversion matrices, and the first displacement included in each of the fourth conversion matrices; Obtaining a second displacement according to the time information and the inertial navigation system data; Obtaining a third displacement according to the time information and the vehicle chassis data; According to the comparison result of the first displacement, the second displacement and the third displacement, the fourth transformation matrix is ​​screened to obtain a screened transformation matrix; Determining the optimal posture of the vehicle at this moment according to the vehicle posture change amount and the fourth conversion matrix includes: determining the optimal posture of the vehicle at this moment according to the vehicle posture change amount and the filtered conversion matrix.

11. The method according to claim 10, characterized in that Also includes: Obtain map-related data when the vehicle passes the same position in the target road section multiple times, and obtain loop detection constraints based on the multiple map-related data; Determining the optimal posture of the vehicle at this moment according to the vehicle posture change amount and the filtered conversion matrix, including: determining the optimal posture of the vehicle at this moment according to the vehicle posture change amount, the filtered conversion matrix and the loop detection constraint.

12. A vehicle positioning device, characterized in that: The device comprises: An acquisition module is used to acquire vehicle positioning related data at the current moment, wherein the vehicle positioning related data includes: inertial navigation system data, vehicle chassis data and point cloud data; A calculation module, used for calculating the vehicle posture at the current moment according to the inertial navigation system data to obtain the calculated vehicle posture at the current moment; A correction module, used to correct the calculated vehicle posture using the vehicle chassis data to obtain the first vehicle corrected posture at the current moment; A positioning module, used to determine the vehicle positioning posture at the current moment according to the first vehicle correction posture and the conversion matrix from the point cloud data to the target map; Wherein, the positioning module includes: a matching unit and a positioning unit; The matching unit is used to obtain a transformation matrix from point cloud data to a target map; The positioning unit is used to determine the vehicle positioning posture at the current moment according to the conversion matrix and the first vehicle corrected posture; The matching unit is specifically used to segment the point cloud data when the vehicle is in the tunnel to obtain first point cloud data including a left tunnel wall point cloud, second point cloud data including a right tunnel wall point cloud, and third point cloud data including a ground point cloud; perform plane fitting on the first point cloud data, the second point cloud data, and the third point cloud data respectively to obtain a left tunnel wall plane, a right tunnel wall plane, and a ground plane; determine a left tunnel wall plane point cloud based on a point cloud in the first point cloud data whose distance to the left tunnel wall plane is within a first preset range; determine a right tunnel wall plane point cloud based on a point cloud in the second point cloud data whose distance to the right tunnel wall plane is within a second preset range; project the left tunnel wall plane point cloud and the right tunnel wall plane point cloud to the ground plane to obtain first available point cloud data; match the first available point cloud data with the target map to obtain a second transformation matrix from the first available point cloud data to the target map; The transformation matrix includes the second transformation matrix.

13. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 11 are implemented.

14. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 11 are implemented.

Citation Information

Patent Citations

  • Port-environment-oriented multi-source data fusion type unmanned vehicle real-time positioning method

    CN110988894A