Vehicle positioning method, device, equipment, storage medium and product

By constructing an environmental point cloud map and extracting keyframe information and descriptors, combined with data from the inertial measurement unit and wheel speedometer, the positioning error caused by satellite signal obstruction in indoor scenes was resolved, and real-time accurate vehicle positioning was achieved.

CN120926982APending Publication Date: 2025-11-11CHINA INTELLIGENT & CONNECTED VEHICLES (BEIJING) RES INST CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511318388.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-15
Publication Date
2025-11-11

AI Technical Summary

Technical Problem

In indoor, underground, and tunnel scenarios, satellite signal blockage can cause RTK positioning signal loss or shift, making it easy for sensor point cloud frame matching to produce mismatches and resulting in inaccurate positioning.

Method used

By acquiring pre-collected lidar data, inertial measurement unit data, and wheel speed meter data, an environmental point cloud map is constructed, key frame information and point cloud descriptors are extracted, and initial positioning is performed by combining inertial measurement unit and wheel speed meter data. Real-time information on vehicle motion changes is acquired, and positioning is performed using data from multiple sensors.

Benefits of technology

It improves the accuracy and stability of vehicle positioning, avoids mismatch problems caused by similar point cloud frames, and achieves real-time accurate positioning based on the combination of multi-sensor data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120926982A_ABST
    Figure CN120926982A_ABST
Patent Text Reader

Abstract

The invention provides a vehicle positioning method and device, equipment, a storage medium and a product. The method comprises the following steps: acquiring pre-acquired laser radar data, inertial measurement unit data and wheel speed meter data; constructing an environment point cloud picture according to the laser radar data; key frame information in the environment point cloud picture is determined, and a point cloud descriptor corresponding to the key frame information is obtained according to the inertial measurement unit data and the wheel speed meter data; according to current point cloud data, the environment point cloud picture and the point cloud descriptor, initial positioning is completed, and the initial position of a vehicle is determined; acquiring current laser radar data, current inertial measurement unit data and current chassis data of the vehicle, and determining motion change information of the vehicle; and obtaining a real-time positioning result of the vehicle according to the starting position of the vehicle and the motion change information.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of autonomous driving technology, and in particular to a vehicle positioning method, device, equipment, storage medium, and product. Background Technology

[0002] For autonomous vehicles, accurate positioning is a prerequisite for normal operation. Generally, in open outdoor environments, vehicles rely on real-time kinematic (RTK) positioning for accurate location. However, in indoor, underground, tunnel, and high-rise building scenarios, satellite signals can be blocked, causing RTK positioning signal loss or positioning deviation. In these situations, sensors are typically used for positioning.

[0003] To ensure accurate positioning in indoor scenes, point cloud frames obtained from sensor data are typically used for localization. However, in indoor environments where RTK information is unavailable and the similarity between different scenes is extremely high, the point cloud data acquired at different times is not significantly different. It is impossible to determine pose changes through inter-frame transformation. The high similarity between point cloud frames makes it easy to produce mismatches when using point cloud frame matching alone, resulting in positioning offset or failure. Summary of the Invention

[0004] This application provides a vehicle positioning method, device, equipment, storage medium, and product, which can improve the accuracy and stability of positioning.

[0005] Firstly, this application provides a vehicle positioning method, including:

[0006] Acquire pre-collected lidar data, inertial measurement unit data, and wheel speed meter data;

[0007] Based on the lidar data, an environmental point cloud map is constructed;

[0008] Determine the keyframe information in the environmental point cloud map, and obtain the point cloud descriptor corresponding to the keyframe information based on the inertial measurement unit data and the wheel speed meter data;

[0009] Based on the current point cloud data, the environmental point cloud map, and the point cloud descriptor, initial positioning is completed to determine the initial position of the vehicle.

[0010] Acquire the vehicle's current lidar data, current inertial measurement unit data, and current chassis data to determine the vehicle's motion change information;

[0011] Based on the vehicle's initial position and the motion change information, the real-time vehicle positioning result is obtained.

[0012] In some possible implementations, acquiring the vehicle's current lidar data, current inertial measurement unit data, and current chassis data to determine the vehicle's motion change information includes:

[0013] Acquire the vehicle's current LiDAR data, and determine the current point cloud information based on the current LiDAR data;

[0014] Construct a laser odometry based on the current point cloud information;

[0015] Obtain the vehicle's current chassis data, and establish a vehicle kinematic model based on the front wheel steering angle and speed in the current chassis data;

[0016] A wheel speed odometer was constructed based on the vehicle kinematics model described above.

[0017] Acquire the vehicle's current inertial measurement unit data, and determine the position change information in the current point cloud information based on the current inertial measurement unit data;

[0018] Based on the laser odometer, the wheel speed odometer, and the position change information, the vehicle's motion change information is determined.

[0019] In some possible implementations, acquiring the vehicle's current LiDAR data and determining the current point cloud information based on the current LiDAR data includes:

[0020] Acquire the vehicle's current LiDAR data and current inertial measurement unit data;

[0021] Preprocess the current lidar data based on the current inertial measurement unit data;

[0022] Based on the preprocessed current lidar data, the current point cloud information is determined.

[0023] In some possible implementations, the initial positioning based on the current point cloud data, the environmental point cloud map, and the point cloud descriptor, to determine the initial vehicle position, includes:

[0024] Match the current point cloud data with the point cloud descriptor to determine the target point cloud descriptor corresponding to the current point cloud data;

[0025] Based on the position of the target point cloud descriptor in the environmental point cloud map, the vehicle position is determined, and global initialization positioning is completed.

[0026] In some possible implementations, after obtaining the real-time vehicle positioning result based on the vehicle's initial position and the motion change information, the method further includes:

[0027] The real-time positioning results are mapped onto a pre-generated global map;

[0028] The vehicle's current location and trajectory are displayed on the global map.

[0029] In some possible implementations, obtaining the real-time vehicle positioning result based on the vehicle's initial position and the motion change information includes:

[0030] The initial position of the vehicle and the motion change information are input into a preset map optimization algorithm;

[0031] Data calculations are performed using a preset map optimization algorithm to output real-time positioning results.

[0032] Secondly, this application provides a vehicle positioning device, the device comprising:

[0033] The acquisition module is used to acquire pre-collected lidar data, inertial measurement unit data, and wheel speed meter data;

[0034] A construction module is used to construct an environmental point cloud map based on the lidar data;

[0035] The calculation module is used to determine the key frame information in the environmental point cloud map, and obtain the point cloud descriptor corresponding to the key frame information based on the inertial measurement unit data and the wheel speed meter data.

[0036] The determination module is used to complete the initial positioning and determine the initial position of the vehicle based on the current point cloud data, the environmental point cloud map and the point cloud descriptor.

[0037] The determination module is also used to acquire the vehicle's current lidar data, current inertial measurement unit data, and current chassis data to determine the vehicle's motion change information;

[0038] The positioning module is used to obtain the real-time positioning result of the vehicle based on the initial position of the vehicle and the motion change information.

[0039] Thirdly, this application provides a vehicle positioning device, the device comprising: a processor, and a memory storing computer program instructions; the processor reads and executes the computer program instructions to implement the vehicle positioning method described above.

[0040] Fourthly, this application provides a computer-readable storage medium storing computer program instructions that, when executed by a processor, implement the vehicle positioning method described above.

[0041] Fifthly, this application provides a computer program product in which instructions, when executed by a processor of an electronic device, cause the electronic device to perform the vehicle positioning method described above.

[0042] The vehicle positioning method, apparatus, device, storage medium, and product provided in this application acquire pre-collected lidar data, inertial measurement unit data, and wheel speed sensor data to construct an environmental point cloud map and obtain point cloud descriptors corresponding to the key frame information, thereby completing initial positioning and determining the initial position of the vehicle. Subsequently, the current lidar data, current inertial measurement unit data, and current chassis data of the vehicle are acquired in real time to determine the vehicle's motion change information, thereby obtaining the real-time positioning result of the vehicle. By extracting point cloud key frames and descriptors for positioning, the mismatch problem that may be caused by similar point cloud frames is avoided. Real-time positioning based on the combination of multiple sensor data can improve the accuracy and stability of positioning. Attached Figure Description

[0043] This application can be better understood from the following description of specific embodiments in conjunction with the accompanying drawings, wherein:

[0044] Other features, objects, and advantages of this application will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings, wherein the same or similar reference numerals denote the same or similar features.

[0045] Figure 1 This is a flowchart of a vehicle positioning method provided in one embodiment of this application;

[0046] Figure 2 This is a flowchart of a vehicle positioning method provided in another embodiment of this application;

[0047] Figure 3 This is a schematic diagram of a point cloud map established in an indoor circular scene in a vehicle positioning method provided in one embodiment of this application;

[0048] Figure 4 This is a schematic diagram of the structure of a vehicle positioning device provided in one embodiment of this application;

[0049] Figure 5 This is a schematic diagram of the hardware structure of the vehicle positioning device provided in the embodiments of this application. Detailed Implementation

[0050] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.

[0051] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes said element.

[0052] To address the problems of the prior art, embodiments of this application provide a vehicle positioning method, apparatus, device, storage medium, and product. The vehicle positioning method provided in this application embodiment will be described first below.

[0053] Figure 1 A flowchart illustrating a vehicle positioning method according to an embodiment of this application is shown. Figure 1 As shown, the method includes the following steps: S101 to S106.

[0054] S101: Acquire pre-collected lidar data, inertial measurement unit data, and wheel speed meter data.

[0055] In the specific implementation, pre-collected LiDAR data, Inertial Measurement Unit (IMU) data, and wheel speed meter data are read from the storage device. The LiDAR data is stored in point cloud format, the IMU data includes acceleration and angular velocity, and the wheel speed meter data contains the rotational speed information of the vehicle's wheels.

[0056] As another implementation method, when acquiring data, the data from different sensors can be timestamped to ensure data synchronization.

[0057] S102: Construct an environmental point cloud map based on the above lidar data.

[0058] In the specific implementation, the acquired LiDAR data is processed using point cloud algorithms, such as point cloud filtering and clustering, to generate a 3D point cloud map of the environment. Based on the processed point cloud data, a point cloud model of the environment is constructed.

[0059] As another implementation method, point clouds can be denoised, downsampled, and filtered to eliminate sensor noise and improve the accuracy of subsequent processing.

[0060] S103: Determine the key frame information in the above environmental point cloud map, and obtain the point cloud descriptor corresponding to the above key frame information based on the above inertial measurement unit data and the above wheel speed meter data.

[0061] In the specific implementation, keyframes are extracted from the constructed environmental point cloud map. These frames can effectively describe environmental changes. Feature extraction is performed on the selected keyframes to generate point cloud descriptors. IMU and wheel speed sensor data are used to correlate and enhance the keyframe features, resulting in point cloud descriptors corresponding to the aforementioned keyframe information.

[0062] S104: Based on the current point cloud data, the above environmental point cloud map, and the above point cloud descriptor, complete the initial positioning and determine the initial position of the vehicle.

[0063] In the specific implementation, a matching algorithm is used to register the current point cloud data with the environmental point cloud map to determine the vehicle's initial position. Combined with the point cloud descriptor, a preset global optimization method is used to improve the positioning accuracy. The initial position of the vehicle is determined, and the positioning result is output, thus confirming the vehicle's initial position.

[0064] S105: Acquire the vehicle's current lidar data, current inertial measurement unit data, and current chassis data to determine the vehicle's motion change information.

[0065] In practice, LiDAR data, IMU data, and chassis data are acquired in real time from sensors. IMU data and wheel speed sensor data are used to calculate the vehicle's motion state, such as speed, acceleration, and steering angle. Data from different sensors is fused to obtain accurate motion change information and determine the vehicle's motion characteristics.

[0066] S106: Based on the vehicle's initial position and the motion change information, the real-time vehicle positioning result is obtained.

[0067] In the specific implementation, the vehicle's position is updated in real time based on its initial position and current motion changes. During the update process, corrections and optimizations are made based on the vehicle's state, including position and speed, using feedback from sensor data to obtain the real-time vehicle positioning result.

[0068] The vehicle positioning method provided in this application acquires pre-collected lidar data, inertial measurement unit data, and wheel speed sensor data to construct an environmental point cloud map and obtain point cloud descriptors corresponding to the key frame information, thereby completing initial positioning and determining the initial position of the vehicle. Then, it acquires the vehicle's current lidar data, current inertial measurement unit data, and current chassis data in real time to determine the vehicle's motion change information, thereby obtaining the real-time positioning result of the vehicle. By extracting point cloud key frames and descriptors for positioning, it avoids mismatch problems that may be caused by similar point cloud frames. Real-time positioning based on the combination of multiple sensor data can improve the accuracy and stability of positioning.

[0069] In order to accurately obtain information on the movement changes of the vehicle, in some embodiments, the above-mentioned S105 may include the following steps: S1051 to S1056.

[0070] S1051: Obtain the vehicle's current LiDAR data and determine the current point cloud information based on the aforementioned current LiDAR data.

[0071] In the specific implementation, point cloud data of the current environment is acquired in real time using a LiDAR sensor. The acquired raw point cloud data is then denoised and filtered to eliminate unnecessary noise and errors. The processed data is then converted into point cloud information.

[0072] S1052: Construct a laser odometry based on the current point cloud information described above.

[0073] In the specific implementation, the current point cloud information obtained earlier is used for registration with the previous point cloud data. Specifically, the matching between points is continuously optimized through iteration to align the current point cloud with the reference point cloud. Through the registration process, the vehicle's position change relative to the previous moment is calculated, including translation and rotation information. The calculated pose information is then converted into odometry data to update the vehicle's estimated position and construct the laser odometry system.

[0074] S1053: Obtain the current chassis data of the vehicle, and establish a vehicle kinematic model based on the front wheel steering angle and speed in the current chassis data.

[0075] In practice, chassis sensor data, including the steering angle of the front wheels and the vehicle speed, is acquired from the vehicle's control system. The chassis data is then used to build a kinematic model of the vehicle, such as a monorail model.

[0076] S1054: Construct a wheel speed odometer based on the above vehicle kinematics model.

[0077] In the specific implementation, based on the chassis data obtained above, wheel speed information is calculated. Using the front wheel steering angle and speed data in the vehicle kinematics model, the vehicle's motion path is calculated, and the results are combined with the odometer data to form wheel speed odometer data, thereby constructing the wheel speed odometer.

[0078] S1055: Obtain the current inertial measurement unit data of the vehicle, and determine the position change information in the current point cloud information based on the current inertial measurement unit data.

[0079] In the specific implementation, data from the inertial measurement unit (IMU), including acceleration and angular velocity, is acquired in real time. Using the acceleration data from the IMU, position change information is calculated through integration to construct a wheel speed odometer.

[0080] As another implementation, since IMU data may drift, Kalman filtering or complementary filtering can be used to fuse IMU data with previous pose information to obtain a more accurate estimate of position change.

[0081] S1056: Based on the laser odometer, the wheel speed odometer, and the position change information mentioned above, determine the vehicle's motion change information.

[0082] In the specific implementation, data from laser odometers, wheel speed odometers, and IMUs are fused to obtain a more accurate vehicle motion state. This fusion can be achieved using filtering algorithms such as extended Kalman filtering. By analyzing the fused data, information about vehicle motion changes, such as acceleration, steering angle, and heading, is determined.

[0083] The embodiments described above in this application obtain the vehicle's current LiDAR data, determine the current point cloud information based on the current LiDAR data, and then construct a LiDAR odometry based on the current point cloud information. Similarly, the vehicle's current chassis data is obtained, and a vehicle kinematic model is established based on the front wheel angle and speed in the current chassis data, and a wheel speed odometry is constructed. The vehicle's current inertial measurement unit data is obtained, and the position change information in the current point cloud information is determined based on the current inertial measurement unit data. Finally, by combining all of the above information, the vehicle's motion change information is determined, thus accurately obtaining the vehicle's motion change information.

[0084] In order to obtain the current point cloud information more accurately, in some implementations, the above S1051 may include the following steps: S10511 to S10513.

[0085] S10511: Acquire the vehicle's current LiDAR data and current inertial measurement unit data.

[0086] In the specific implementation, a specific communication protocol is used to call the device driver, execute data reading commands, and obtain the current point cloud data from the LiDAR device. The acquired raw point cloud data is stored in a data structure. The current acceleration and angular velocity data of the IMU are also obtained. The IMU provides real-time sensor data, which can be obtained through polling or event-driven methods. The IMU data is stored in another data structure, which typically includes acceleration, angular velocity, and a timestamp.

[0087] S10512: Preprocess the current lidar data based on the current inertial measurement unit data.

[0088] In the implementation, LiDAR and IMU data are aligned using timestamps. Filtering techniques are applied to the IMU data to remove noise, and then the IMU's acceleration data is converted into the vehicle's global coordinate system. Using the processed IMU data, the position of each point in the LiDAR data is adjusted. Specifically, using the current angle information provided by the IMU—roll, pitch, and yaw angles—the point cloud captured by the LiDAR is rotated and moved to more accurately reflect the vehicle's true position in the environment.

[0089] As another implementation, if the time interval between IMU data and lidar data is large, an interpolation method, such as linear interpolation, can be used to estimate the IMU state at the lidar sampling time.

[0090] S10513: Based on the preprocessed current lidar data, determine the current point cloud information.

[0091] In the specific implementation, the preprocessed lidar data is organized into structured point cloud information. For example, the coordinates, reflection intensity and other information of each point are combined into a unified format to ensure that all point cloud data are in the same coordinate system. The point cloud data is then segmented using an algorithm to determine the current point cloud information.

[0092] The above-described embodiments of this application obtain the current LiDAR data and current inertial measurement unit data of the vehicle, preprocess the current LiDAR data based on the current inertial measurement unit data to determine the current point cloud information, and correct the current LiDAR data through preprocessing to obtain the current point cloud information more accurately.

[0093] In order to obtain accurate global initialization positioning, in some embodiments, the above S104 may include the following steps: S1041 to S1042.

[0094] S1041: Match the current point cloud data with the point cloud descriptor to determine the target point cloud descriptor corresponding to the current point cloud data.

[0095] In the specific implementation, feature descriptors are pre-calculated and stored in the environmental point cloud map to characterize key features in the known environment. These descriptors are extracted from the environmental point cloud and can effectively capture local shape and feature information. Feature descriptors are extracted from the currently received point cloud data. The descriptors of the current point cloud are matched with the descriptors stored in the environment to determine the target point cloud descriptor corresponding to the current point cloud data.

[0096] S1042: Determine the vehicle position based on the position of the target point cloud descriptor in the environmental point cloud map, and complete the global initialization positioning.

[0097] In the specific implementation, the location information of each target point cloud descriptor is found using the previously established environmental point cloud map. This is typically achieved through a pre-calculated mapping relationship between descriptors and their corresponding spatial coordinates. The vehicle's global pose is estimated based on the location of the currently matched target descriptor. If a sufficient number of successfully matched descriptors are available, their distribution information in the environment can be used to further optimize the location estimation. A weighted average of multiple descriptors can be performed to enhance the accuracy of the localization. Once the vehicle's position in the environmental point cloud map is calculated, global initialization localization is complete.

[0098] The above-described implementation of this application matches the current point cloud data with the point cloud descriptor to determine the target point cloud descriptor corresponding to the current point cloud data, and then determines the vehicle position based on the position of the target point cloud descriptor in the environmental point cloud map, thereby obtaining accurate global initial positioning.

[0099] In order to implement feedback on the position and movement of the vehicle, in some embodiments, after S106, the method may further include the following steps: S107 to S108.

[0100] S107: Map the above real-time positioning results onto the pre-generated global map.

[0101] In the specific implementation, after real-time positioning is completed, the vehicle's current pose is extracted from the positioning algorithm. This ensures the global map uses an appropriate data structure, and the vehicle's current position is marked on the global map. This can be achieved by drawing a small icon on the map or changing the state of a specific grid cell.

[0102] As another implementation method, if the coordinate system of the global map is different from the real-time positioning coordinate system of the vehicle, a coordinate transformation is required to map the vehicle's pose from the local coordinate system to the global map coordinate system.

[0103] S108: Display the vehicle's current position and trajectory on the global map described above.

[0104] In the specific implementation, a global map is drawn onto the display interface, an icon representing the vehicle's current position is added to the map, and a continuous line segment is drawn between the vehicle's current position and past position to visualize the vehicle's movement trajectory. As the vehicle moves, the trajectory and position display are updated in real time, thereby displaying the vehicle's current position and movement trajectory in the aforementioned global map.

[0105] The above-described implementation of this application's embodiments maps the real-time positioning results onto a pre-generated global map, and then displays the vehicle's current position and movement trajectory on the global map, thereby enabling feedback on the vehicle's position and movement.

[0106] To obtain accurate real-time vehicle location results, some implementation methods may refer to... Figure 2 The above S106 may include the following steps: S201 to S202.

[0107] S201: Input the above-mentioned vehicle initial position and the above-mentioned motion change information into the preset map optimization algorithm.

[0108] In practical implementation, when the vehicle positioning system is activated, the system acquires the vehicle's initial pose through sensors. During vehicle movement, the sensors continuously collect motion change information, such as speed, acceleration, and turning rate. Using a graph optimization algorithm, the vehicle's initial position and motion change information are represented as nodes and edges, and the constructed nodes and edges are input into a pre-defined graph optimization algorithm.

[0109] S202: Data calculation is performed using a preset map optimization algorithm to output real-time positioning results.

[0110] In the implementation, a suitable graph optimization algorithm is selected based on the requirements. Nonlinear least squares is used to minimize the error between nodes. After the optimization algorithm is completed, the final position of each node is extracted from the optimization results. These positions represent the optimized real-time vehicle positioning result, which is then output.

[0111] The above-described implementation method of this application inputs the initial position of the vehicle and the motion change information into a preset map optimization algorithm, performs data calculation through the preset map optimization algorithm, and outputs real-time positioning results, thereby accurately obtaining the real-time positioning results of the vehicle.

[0112] In one embodiment of this application, the solution can be divided into two main parts: global initialization and real-time positioning. During global initialization, data acquisition needs to be completed before global initialization. The acquired data includes LiDAR data, IMU data, wheel speed sensor data, etc. Then, a global point cloud map is constructed offline based on the sensor data, while saving keyframe information and recording the corresponding point cloud descriptors based on the point cloud keyframes. The point cloud map built in an indoor circular scene is shown below. Figure 3 As shown, the generated map, keyframes, and corresponding descriptors are loaded into the localization program, and the autonomous vehicle is driven into an indoor circular building scene. The localization program is started, the vehicle remains stationary, and initialization is performed. The program matches the current point cloud data with the map and keyframe descriptors to obtain the best matching score to determine the position, which is then mapped onto the map to complete the global initialization localization.

[0113] During real-time positioning, after initialization, information is transmitted to the positioning node. At this point, the vehicle can be started, receiving LiDAR, IMU, and chassis information. Based on the IMU information, the LiDAR undergoes preprocessing operations such as distortion correction and filtering. Then, a LiDAR odometry is built based on the processed point cloud information. A kinematic model is created from the front wheel steering angle and speed output from the chassis to construct a wheel speed odometry. The IMU calculates the inter-frame pose changes of the point cloud through pre-integration. All this information is then input into the backend module. The backend module performs backend fusion optimization using graph optimization based on the input information, and the optimized real-time positioning is then output. Finally, the real-time positioning is visualized on a map.

[0114] The above-described implementation method of this application adopts point cloud keyframe and descriptor matching for global initialization localization, which can effectively address the localization challenges in indoor circular scenes. The keyframe strategy also greatly ensures real-time performance and effectively reduces computational power consumption. Furthermore, localization fusion is performed based on LiDAR, IMU, and chassis information. The fusion of multiple sensors ensures the robustness and stability of the algorithm. This enables stable and accurate real-time localization in indoor environments at low speeds.

[0115] Based on the vehicle positioning method provided in the above embodiments, this application also provides specific implementations of a vehicle positioning device. Please refer to the following embodiments.

[0116] First see Figure 4 The vehicle positioning device 400 provided in this application embodiment includes the following modules:

[0117] The acquisition module 401 is used to acquire pre-collected lidar data, inertial measurement unit data, and wheel speed meter data.

[0118] Module 402 is used to construct an environmental point cloud map based on the aforementioned lidar data.

[0119] The calculation module 403 is used to determine the key frame information in the above environmental point cloud map, and to obtain the point cloud descriptor corresponding to the above key frame information based on the above inertial measurement unit data and the above wheel speed meter data.

[0120] The determination module 404 is used to complete the initial positioning and determine the initial position of the vehicle based on the current point cloud data, the above-mentioned environmental point cloud map and the above-mentioned point cloud descriptor.

[0121] The determination module 404 is also used to acquire the vehicle's current lidar data, current inertial measurement unit data, and current chassis data to determine the vehicle's motion change information.

[0122] The positioning module 405 is used to obtain the real-time positioning result of the vehicle based on the initial position of the vehicle and the motion change information.

[0123] The vehicle positioning device provided in this application acquires pre-collected lidar data, inertial measurement unit data, and wheel speed sensor data to construct an environmental point cloud map and obtain point cloud descriptors corresponding to the key frame information, thereby completing initial positioning and determining the initial position of the vehicle. Then, it acquires the vehicle's current lidar data, current inertial measurement unit data, and current chassis data in real time to determine the vehicle's motion change information, thereby obtaining the real-time positioning result of the vehicle. By extracting point cloud key frames and descriptors for positioning, it avoids mismatch problems that may be caused by similar point cloud frames. Real-time positioning based on the combination of multiple sensor data can improve the accuracy and stability of positioning.

[0124] As one implementation of this application, module 404 includes:

[0125] The acquisition unit is used to acquire the current LiDAR data of the vehicle and determine the current point cloud information based on the current LiDAR data.

[0126] The construction unit is used to construct a laser odometry based on the current point cloud information described above.

[0127] A unit is established to acquire the vehicle's current chassis data, and a vehicle kinematic model is built based on the front wheel steering angle and speed in the aforementioned current chassis data.

[0128] The building unit is also used to build a wheel speed odometer according to the above-mentioned vehicle kinematics model.

[0129] The determination unit is used to acquire the current inertial measurement unit data of the vehicle and determine the position change information in the current point cloud information based on the current inertial measurement unit data.

[0130] The determining unit is also used to determine the vehicle's motion change information based on the aforementioned laser odometer, wheel speed odometer, and position change information.

[0131] The embodiments described above in this application obtain the vehicle's current LiDAR data, determine the current point cloud information based on the current LiDAR data, and then construct a LiDAR odometry based on the current point cloud information. Similarly, the vehicle's current chassis data is obtained, and a vehicle kinematic model is established based on the front wheel angle and speed in the current chassis data, and a wheel speed odometry is constructed. The vehicle's current inertial measurement unit data is obtained, and the position change information in the current point cloud information is determined based on the current inertial measurement unit data. Finally, by combining all of the above information, the vehicle's motion change information is determined, thus accurately obtaining the vehicle's motion change information.

[0132] As one implementation of this application, the acquisition unit includes:

[0133] The acquisition subunit is used to acquire the vehicle's current LiDAR data and current inertial measurement unit data.

[0134] The processing subunit is used to preprocess the current lidar data based on the current inertial measurement unit data.

[0135] The determination sub-unit is used to determine the current point cloud information based on the preprocessed current lidar data mentioned above.

[0136] The above-described embodiments of this application obtain the current LiDAR data and current inertial measurement unit data of the vehicle, preprocess the current LiDAR data based on the current inertial measurement unit data to determine the current point cloud information, and correct the current LiDAR data through preprocessing to obtain the current point cloud information more accurately.

[0137] As one implementation of this application, module 404 is defined, including:

[0138] The matching unit is used to match the current point cloud data with the point cloud descriptor to determine the target point cloud descriptor corresponding to the current point cloud data.

[0139] The determination unit is used to determine the vehicle position based on the position of the target point cloud descriptor in the environmental point cloud map, and complete the global initialization positioning.

[0140] The above-described implementation of this application matches the current point cloud data with the point cloud descriptor to determine the target point cloud descriptor corresponding to the current point cloud data, and then determines the vehicle position based on the position of the target point cloud descriptor in the environmental point cloud map, thereby obtaining accurate global initial positioning.

[0141] As one implementation of this application, the vehicle positioning device 400 further includes:

[0142] The mapping module is used to map the real-time positioning results to a pre-generated global map.

[0143] The display module is used to display the vehicle's current position and movement trajectory in the aforementioned global map.

[0144] The above-described implementation of this application's embodiments maps the real-time positioning results onto a pre-generated global map, and then displays the vehicle's current position and movement trajectory on the global map, thereby enabling feedback on the vehicle's position and movement.

[0145] As one implementation of this application, the positioning module 405 includes:

[0146] The input unit is used to input the initial position of the vehicle and the motion change information into the preset map optimization algorithm.

[0147] The calculation unit is used to perform data calculations using a preset map optimization algorithm and output real-time positioning results.

[0148] The above-described implementation method of this application inputs the initial position of the vehicle and the motion change information into a preset map optimization algorithm, performs data calculation through the preset map optimization algorithm, and outputs real-time positioning results, thereby accurately obtaining the real-time positioning results of the vehicle.

[0149] Each module in the vehicle positioning device provided in this application embodiment can implement each step in the above-described vehicle positioning method and achieve the corresponding effect. For the sake of brevity, it will not be described in detail here.

[0150] Figure 5 A schematic diagram of the vehicle positioning hardware provided in an embodiment of this application is shown.

[0151] The vehicle positioning device may include a processor 501 and a memory 502 storing computer program instructions.

[0152] Specifically, the processor 501 may include a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.

[0153] Memory 502 may include mass storage for data or instructions. For example, and not limitingly, memory 502 may include a hard disk drive (HDD), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or Universal Serial Bus (USB) drive, or a combination of two or more of these. Where appropriate, memory 502 may include removable or non-removable (or fixed) media. Where appropriate, memory 502 may be internal or external to the integrated gateway disaster recovery device. In a particular embodiment, memory 502 is non-volatile solid-state memory.

[0154] The memory may include read-only memory (ROM), random access memory (RAM), disk storage media devices, optical storage media devices, flash memory devices, and electrical, optical, or other physical / tangible memory storage devices. Therefore, typically, a memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the vehicle positioning method according to any embodiment of this disclosure.

[0155] The processor 501 implements any of the vehicle positioning methods described in the above embodiments by reading and executing computer program instructions stored in the memory 502.

[0156] In one example, the vehicle positioning device may also include a communication interface 503 and a bus 510. For example, Figure 5 As shown, the processor 501, memory 502, and communication interface 503 are connected through bus 510 and complete communication with each other.

[0157] The communication interface 503 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.

[0158] Bus 510 includes hardware, software, or both, that couples components of an online data traffic metering device together. For example, and not limitingly, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), HyperTransport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Microchannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local (VLB) bus, or other suitable buses, or combinations of two or more of these. Where appropriate, bus 510 may include one or more buses. Although specific buses are described and illustrated in embodiments of this application, any suitable bus or interconnect is contemplated herein.

[0159] Furthermore, in conjunction with the vehicle positioning methods described in the above embodiments, this application embodiment can provide a computer storage medium for implementation. The computer storage medium stores computer program instructions; when these computer program instructions are executed by a processor, they implement any of the vehicle positioning methods described in the above embodiments.

[0160] This application also provides a computer program product, including a computer program that, when executed, implements any of the vehicle positioning methods described in the above embodiments.

[0161] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of this application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.

[0162] The functional blocks shown in the above-described structural diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.

[0163] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.

[0164] The aspects of this disclosure have been described above with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that these instructions, executable via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by special-purpose hardware performing the specified functions or actions, or can be implemented by a combination of special-purpose hardware and computer instructions.

[0165] The above description is merely a specific implementation of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.

Claims

1. A vehicle positioning method, characterized in that, include: Acquire pre-collected lidar data, inertial measurement unit data, and wheel speed meter data; Based on the lidar data, an environmental point cloud map is constructed; Determine the keyframe information in the environmental point cloud map, and obtain the point cloud descriptor corresponding to the keyframe information based on the inertial measurement unit data and the wheel speed meter data; Based on the current point cloud data, the environmental point cloud map, and the point cloud descriptor, initial positioning is completed to determine the initial position of the vehicle. Acquire the vehicle's current lidar data, current inertial measurement unit data, and current chassis data to determine the vehicle's motion change information; Based on the vehicle's initial position and the motion change information, the real-time vehicle positioning result is obtained.

2. The vehicle positioning method according to claim 1, characterized in that, The acquisition of the vehicle's current lidar data, current inertial measurement unit data, and current chassis data to determine the vehicle's motion change information includes: Acquire the vehicle's current LiDAR data, and determine the current point cloud information based on the current LiDAR data; Construct a laser odometry based on the current point cloud information; Obtain the vehicle's current chassis data, and establish a vehicle kinematic model based on the front wheel steering angle and speed in the current chassis data; A wheel speed odometer was constructed based on the vehicle kinematics model described above. Acquire the vehicle's current inertial measurement unit data, and determine the position change information in the current point cloud information based on the current inertial measurement unit data; Based on the laser odometer, the wheel speed odometer, and the position change information, the vehicle's motion change information is determined.

3. The vehicle positioning method according to claim 2, characterized in that, The step of acquiring the vehicle's current LiDAR data and determining the current point cloud information based on the current LiDAR data includes: Acquire the vehicle's current LiDAR data and current inertial measurement unit data; Preprocess the current lidar data based on the current inertial measurement unit data; Based on the preprocessed current lidar data, the current point cloud information is determined.

4. The vehicle positioning method according to claim 1, characterized in that, The step of initializing the positioning and determining the initial vehicle position based on the current point cloud data, the environmental point cloud map, and the point cloud descriptor includes: Match the current point cloud data with the point cloud descriptor to determine the target point cloud descriptor corresponding to the current point cloud data; Based on the position of the target point cloud descriptor in the environmental point cloud map, the vehicle position is determined, and global initialization positioning is completed.

5. The vehicle positioning method according to claim 1, characterized in that, After obtaining the real-time vehicle positioning result based on the vehicle's initial position and the motion change information, the method further includes: The real-time positioning results are mapped onto a pre-generated global map; The vehicle's current location and trajectory are displayed on the global map.

6. The vehicle positioning method according to any one of claims 1 to 5, characterized in that, The step of obtaining the real-time vehicle positioning result based on the vehicle's initial position and the motion change information includes: The initial position of the vehicle and the motion change information are input into a preset map optimization algorithm; Data calculations are performed using a preset map optimization algorithm to output real-time positioning results.

7. A vehicle positioning device, characterized in that, The device includes: The acquisition module is used to acquire pre-collected lidar data, inertial measurement unit data, and wheel speed meter data; A construction module is used to construct an environmental point cloud map based on the lidar data; The calculation module is used to determine the key frame information in the environmental point cloud map, and obtain the point cloud descriptor corresponding to the key frame information based on the inertial measurement unit data and the wheel speed meter data. The determination module is used to complete the initial positioning and determine the initial position of the vehicle based on the current point cloud data, the environmental point cloud map and the point cloud descriptor. The determination module is also used to acquire the vehicle's current lidar data, current inertial measurement unit data, and current chassis data to determine the vehicle's motion change information; The positioning module is used to obtain the real-time positioning result of the vehicle based on the initial position of the vehicle and the motion change information.

8. A vehicle positioning device, characterized in that, The device includes: a processor and a memory storing computer program instructions; the processor reads and executes the computer program instructions to implement the vehicle positioning method as described in any one of claims 1-6.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer program instructions that, when executed by a processor, implement the vehicle positioning method as described in any one of claims 1-6.

10. A computer program product, characterized in that, When the instructions in the computer program product are executed by the processor of the electronic device, the electronic device performs the vehicle positioning method as described in any one of claims 1-6.