Fusion positioning method, device and electronic equipment for autonomous driving vehicle

By using shared buffers and extended Kalman filter measurement update strategies in autonomous vehicles, the positioning accuracy and stability problems caused by sensor delay are solved, and more efficient data utilization and more stable fusion positioning are achieved.

CN115371689BActive Publication Date: 2025-08-08ZHIDAO NETWORK TECH (BEIJING) CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211019022.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-24
Publication Date
2025-08-08
Estimated Expiration
2042-08-24

AI Technical Summary

Technical Problem

In autonomous driving vehicles, due to the degradation of the fusion positioning accuracy and stability caused by the delay of the sensor measurement information, the prior art fails to fully utilize sensor data by abandoning the delay measurement information.

Method used

The shared buffer buffer buffer state data is used, and the extended Kalman filter is used for measurement updates and time updates, and combined with the fusion strategy of delay sensor data to improve data utilization.

Benefits of technology

The accuracy and stability of fusion positioning are improved, the observation loss of sensor data is avoided, and the positioning robustness is enhanced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115371689B_ABST
    Figure CN115371689B_ABST
Patent Text Reader

Abstract

The present application discloses a fusion positioning method, device and electronic device for an autonomous driving vehicle, the method comprising: obtaining first sensor measurement data, and using this data to obtain corresponding first filter state data from a shared buffer, the shared buffer being used to cache filter state data of a preset time length, the first filter state data being obtained through a first extended Kalman filter; based on the first sensor measurement data and the first filter state data, a second extended Kalman filter is used to perform a fusion update according to a preset update strategy to obtain second filter state data, thereby determining a final fusion positioning result, the preset update strategy including a fusion strategy for delayed sensor measurement data. The present application improves the efficiency of fusion positioning by setting a shared buffer as a data transmission channel, adopts a preset update strategy for fusion update, makes full use of various delayed sensor measurement data, and improves the accuracy and stability of fusion positioning.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of autonomous driving technology, and in particular to a fusion positioning method, device and electronic equipment for an autonomous driving vehicle. Background Art

[0002] Autonomous driving positioning systems typically fuse measurements from multiple sensors, such as IMUs (Inertial Measurement Units), GNSS (Global Navigation Satellite Systems), LiDARs, and visual cameras. Because the autonomous driving processor must simultaneously process data from other non-positioning modules, such as perception, decision-making, and planning, the positioning module also increases computational time due to computing power constraints. Consequently, the measurement information fed into the fused positioning algorithm is often delayed.

[0003] The current method for processing delayed measurement information is: if the time of receiving the measurement information is longer than the trigger time of the measurement information by a certain time (for example, 0.5s), the measurement information received this time is discarded, and the next measurement information is waited for to arrive, and the judgment is repeated again.

[0004] However, although this brute force removal method avoids the impact of time delay, it does not fully utilize all sensor measurement information while occupying the computing power of the autonomous driving processor, which in turn affects the accuracy and stability of the fusion positioning system. Summary of the Invention

[0005] The embodiments of the present application provide a fusion positioning method, device and electronic equipment for an autonomous driving vehicle to improve the fusion positioning accuracy and stability of the autonomous driving vehicle.

[0006] The embodiments of this application adopt the following technical solutions:

[0007] In a first aspect, an embodiment of the present application provides a fusion positioning method for an autonomous driving vehicle, wherein the method includes:

[0008] Acquiring first sensor measurement data;

[0009] Obtaining corresponding first filter state data from a shared buffer according to the first sensor measurement data, the shared buffer being used to cache filter state data for a preset time length, the first filter state data being obtained through a first extended Kalman filter;

[0010] performing measurement updates and time updates according to a preset update strategy using a second extended Kalman filter based on the first sensor measurement data and the corresponding first filter state data to obtain second filter state data, wherein the preset update strategy includes a fusion strategy for delayed sensor measurement data;

[0011] The fusion positioning result at the current moment is determined according to the second filter state data.

[0012] Optionally, after obtaining the first sensor measurement data, the method further includes:

[0013] Determining a reception time and a generation time of the measurement data of the first sensor;

[0014] determining whether the first sensor measurement data is available according to a time interval between the receiving moment and the generating moment;

[0015] When the first sensor measurement data is unavailable and the duration of the unavailability reaches a preset duration threshold, shutting down the sensor module corresponding to the first sensor measurement data;

[0016] When the first sensor measurement data is available, corresponding first filter state data is obtained from a shared buffer according to the first sensor measurement data.

[0017] Optionally, before acquiring corresponding first filter state data from a shared buffer according to the first sensor measurement data, the method includes:

[0018] Get IMU raw measurement data;

[0019] Based on the IMU original measurement data, the first extended Kalman filter is used to perform state prediction to obtain the first filter state data.

[0020] Optionally, acquiring corresponding first filter state data from a shared buffer according to the first sensor measurement data includes:

[0021] Determining a reception time and a generation time of the measurement data of the first sensor;

[0022] Acquire first filter state data corresponding to a time between a reception moment and a generation moment of the first sensor measurement data from the shared buffer.

[0023] Optionally, performing measurement update and time update according to a preset update strategy by a second extended Kalman filter based on the first sensor measurement data and the corresponding first filter state data to obtain the second filter state data includes:

[0024] In the process of updating the time to the current moment, determining whether the second sensor measurement data is obtained;

[0025] If the second sensor measurement data is obtained, determining the time when the second sensor measurement data is generated, and determining whether a new measurement update is required based on a result of comparing the time when the second sensor measurement data is generated with the time when the first sensor measurement data is generated;

[0026] Determining the fusion positioning result at the current moment according to the second filter state data includes:

[0027] If the second sensor measurement data is not obtained, the shared buffer is directly updated according to the second filter state data.

[0028] Optionally, the determining whether re-measurement update is required according to a result of comparing the generation time of the second sensor measurement data with the generation time of the first sensor measurement data includes:

[0029] If the second sensor measurement data is generated later than the first sensor measurement data, it is determined that a new measurement update is required;

[0030] If the second sensor measurement data is generated earlier than the first sensor measurement data, it is determined that re-measurement update is not required.

[0031] Optionally, determining a fused positioning result at a current moment according to the second filter state data includes:

[0032] updating the shared buffer by the second extended Kalman filter according to the second filter state data;

[0033] Obtaining updated filter state data from the updated shared buffer using the first extended Kalman filter;

[0034] The first filter state data is updated according to the updated filter state data, and the fusion positioning result at the current moment is output.

[0035] In a second aspect, an embodiment of the present application further provides a fusion positioning device for an autonomous driving vehicle, wherein the device includes:

[0036] A first acquiring unit, configured to acquire first sensor measurement data;

[0037] a second acquiring unit, configured to acquire corresponding first filter state data from a shared buffer according to the first sensor measurement data, wherein the shared buffer is configured to cache the filter state data for a preset time length, the first filter state data being obtained by using a first extended Kalman filter;

[0038] a first updating unit, configured to perform measurement update and time update according to a preset update strategy using a second extended Kalman filter based on the first sensor measurement data and the corresponding first filter state data, to obtain second filter state data, wherein the preset update strategy includes a fusion strategy for delayed sensor measurement data;

[0039] The first determining unit is configured to determine a fusion positioning result at a current moment according to the second filter state data.

[0040] In a third aspect, an embodiment of the present application further provides an electronic device, including:

[0041] processor; and

[0042] A memory arranged to store computer executable instructions, which when executed cause the processor to perform any of the methods described above.

[0043] In a fourth aspect, an embodiment of the present application further provides a computer-readable storage medium, which stores one or more programs. When the one or more programs are executed by an electronic device including multiple applications, the electronic device executes any of the aforementioned methods.

[0044] At least one of the above technical solutions adopted in the embodiments of the present application can achieve the following beneficial effects: the fusion positioning method of the autonomous driving vehicle in the embodiment of the present application first obtains first sensor measurement data; then, based on the first sensor measurement data, obtains corresponding first filter state data from a shared buffer, the shared buffer is used to cache filter state data of a preset time length, and the first filter state data is obtained by a first extended Kalman filter; then, based on the first sensor measurement data and the corresponding first filter state data, measurement update and time update are performed by a second extended Kalman filter according to a preset update strategy to obtain second filter state data, the preset update strategy includes a fusion strategy for delayed sensor measurement data; finally, the fusion positioning result at the current moment is determined based on the second filter state data. The fusion positioning method of the autonomous driving vehicle in the embodiment of the present application improves the efficiency of fusion positioning by setting a shared buffer as a data transmission channel, and adopts a certain update strategy for measurement update and time update, making full use of various delayed sensor measurement data, avoiding the loss of observation quantity caused by brute force fusion or removal, and improving the accuracy and stability of fusion positioning. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] The drawings described herein are used to provide a further understanding of the present application and constitute a part of the present application. The illustrative embodiments of the present application and their descriptions are used to explain the present application and do not constitute an improper limitation on the present application. In the drawings:

[0046] Figure 1 This is a flow chart of a fusion positioning method for an autonomous driving vehicle in an embodiment of the present application;

[0047] Figure 2 This is a schematic diagram of a fusion timing of multi-sensor measurement data in an embodiment of the present application;

[0048] Figure 3 This is a schematic diagram of a fusion positioning process of an autonomous driving vehicle in an embodiment of the present application;

[0049] Figure 4 A fusion positioning device for an autonomous driving vehicle in an embodiment of the present application;

[0050] Figure 5 This is a structural diagram of an electronic device in an embodiment of the present application. DETAILED DESCRIPTION

[0051] To make the purpose, technical solutions, and advantages of this application more clear, the technical solutions of this application will be clearly and completely described below in conjunction with the specific embodiments of this application and the corresponding drawings. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0052] The following describes in detail the technical solutions provided by various embodiments of the present application in conjunction with the accompanying drawings.

[0053] The embodiment of the present application provides a fusion positioning method for an autonomous driving vehicle, such as Figure 1 As shown, a flow chart of a fusion positioning method for an autonomous driving vehicle in an embodiment of the present application is provided, wherein the method includes at least the following steps S110 to S140:

[0054] Step S110: Acquire first sensor measurement data.

[0055] When performing fusion positioning of an autonomous vehicle, embodiments of the present application first require obtaining first sensor measurement data. The first sensor measurement data herein may be positioning data actually observed by various sensors installed on the autonomous vehicle, such as GNSS positioning data, LiDAR positioning data, and visual camera positioning data. The positioning data from these sensors can be considered measurement data for subsequent fusion and updating processes implemented using the second extended Kalman filter (EKF-2).

[0056] Step S120: acquiring corresponding first filter state data from a shared buffer according to the first sensor measurement data, wherein the shared buffer is used to cache filter state data for a preset time length, and the first filter state data is obtained through a first extended Kalman filter.

[0057] In the fusion positioning solution implemented based on the extended Kalman filter, in addition to the actual measurement data of each sensor, state prediction data is also required, that is, the first filter state data of the embodiment of the present application. The state prediction data refers to the positioning state at the current moment predicted based on the optimal positioning data and inertial measurement data at the previous moment. Specifically, these data can be processed by the first extended Kalman filter (EKF-1).

[0058] Due to time delay, the first sensor measurement data currently received is often measurement data that was generated some time ago. Therefore, during fusion positioning, it is necessary to obtain the corresponding first filter state data from the shared buffer according to the delay time of the first sensor measurement data, so as to facilitate the subsequent fusion of the measurement data with the first filter state data at the same time, ensure the time synchronization accuracy, and improve the fusion positioning accuracy.

[0059] The shared buffer can be viewed as a data transmission channel shared by EKF-1 and EKF-2. It primarily stores filter state data for a period of time, such as 1 second, to improve fusion positioning efficiency and accuracy. EKF-1 can store its predicted filter state data in the shared buffer in real time, while EKF-2 can retrieve EKF-1's predicted filter state data from the shared buffer for measurement updates.

[0060] Step S130, based on the first sensor measurement data and the corresponding first filter state data, measurement update and time update are performed by the second extended Kalman filter according to a preset update strategy to obtain second filter state data, wherein the preset update strategy includes a fusion strategy for delayed sensor measurement data.

[0061] After obtaining the first sensor measurement data and the corresponding first filter state data, EKF-2 can be used to perform measurement updates and time updates according to the preset update strategy. Since the first sensor measurement data often has a delay, and in the process of measurement updates and time updates based on the first sensor measurement data, new other sensor measurement data may be obtained, a certain fusion strategy can be used here to fuse the various delayed sensor measurement data, thereby ensuring that various sensor measurement data can be fully utilized and improving the fusion positioning accuracy and stability.

[0062] Step S140: Determine the fusion positioning result at the current moment according to the second filter state data.

[0063] The positioning result output by EKF-2 can be regarded as the fusion result of the state prediction data and the actual measurement data of the sensor. It is equivalent to correcting and updating the state prediction data of EKF-1 using the actual measurement data of the sensor. Therefore, the final fusion positioning result can be determined based on the positioning result output by EKF-2.

[0064] The fusion positioning method for an autonomous driving vehicle in an embodiment of the present application improves the efficiency of fusion positioning by setting a shared buffer as a data transmission channel, and adopts a certain update strategy for measurement update and time update, making full use of various delayed sensor measurement data, avoiding the loss of observation quantities caused by brute force fusion or removal, and improving the accuracy and stability of fusion positioning.

[0065] In some embodiments of the present application, after obtaining the first sensor measurement data, the method further includes: determining the reception time and generation time of the first sensor measurement data; determining whether the first sensor measurement data is available based on the time interval between the reception time and the generation time; if the first sensor measurement data is unavailable and the duration of unavailability reaches a preset duration threshold, shutting down the sensor module corresponding to the first sensor measurement data; if the first sensor measurement data is available, obtaining the corresponding first filter state data from the shared buffer based on the first sensor measurement data.

[0066] After acquiring the first sensor measurement data, the embodiment of the present application can first judge the delay of the first sensor measurement data to determine whether the currently received first sensor measurement data is usable. Specifically, the first sensor measurement data will carry a timestamp of the time when the first sensor measurement data was generated. Therefore, the delay time of the first sensor measurement data can be determined based on the time interval between the current reception time of the first sensor measurement data and the time when it was generated. Then, the delay time of the first sensor measurement data is compared with the preset delay time threshold. If it exceeds the preset delay time threshold, it means that the current first sensor measurement data delay time is too long. Continuing to use it for subsequent measurement updates will cause a large deviation in the positioning result. Therefore, it can be considered that the first sensor measurement data is unusable and can be directly discarded. If the delay time of the first sensor measurement data does not exceed the preset delay time threshold, it means that the current first sensor measurement data delay time is still acceptable and can be used for subsequent measurement updates. Therefore, it can be considered that the first sensor measurement data is usable.

[0067] In the case where the first sensor measurement data is unavailable, the duration of the unavailability of the first sensor measurement data can be further counted. If the first sensor measurement data received is unavailable for a continuous period of time, such as more than one minute, it indicates that the sensor module corresponding to the first sensor measurement data is significantly affected by computing power. The positioning function of the sensor module can be temporarily disabled to free up the computing power it occupies on the autonomous driving processor, thereby ensuring the normal computing power requirements of other nodes in the autonomous driving system. Of course, after a period of time, such as half an hour, the positioning function of the sensor module can be enabled again and the above judgment process can be repeated.

[0068] It should be noted that the above-mentioned preset delay time threshold and preset duration threshold can be flexibly set according to actual needs and are not specifically limited here.

[0069] In some embodiments of the present application, before obtaining the corresponding first filter state data from the shared buffer based on the first sensor measurement data, the method includes: obtaining IMU raw measurement data; based on the IMU raw measurement data, using the first extended Kalman filter to perform state prediction to obtain the first filter state data.

[0070] The EKF-1 and EKF-2 of the embodiment of the present application are two independent processes for data processing. For EKF-1, it is mainly used to realize the state prediction of the autonomous driving vehicle. When performing state prediction, the IMU raw measurement data can be obtained first. EKF-1 relies on the IMU raw measurement data and the final positioning result of the previous moment to realize state prediction and output state quantities. The state quantities here mainly include 3D position, 3D velocity, 3D attitude, 3D IMU gyro bias, 3D IMU accelerometer bias, a total of 15-dimensional variables. In addition, the first filter state data is further combined with information such as IMU raw data, covariance and state transfer matrix to cache in the shared buffer.

[0071] The state prediction process of EKF-1 can be regarded as a real-time process, which can be realized as long as the raw measurement data of the IMU is available. The measurement update process of EKF-2 depends on the generation and reception of measurement data. Compared with the state prediction process of EKF-1, it is more like an instantaneous process.

[0072] In some embodiments of the present application, obtaining corresponding first filter state data from a shared buffer based on the first sensor measurement data includes: determining the reception time and generation time of the first sensor measurement data; and obtaining, from the shared buffer, the first filter state data corresponding to the reception time and generation time of the first sensor measurement data.

[0073] In an embodiment of the present application, when obtaining the corresponding first filter state data from the shared buffer, the generation time t1 of the first sensor measurement data can be determined based on the timestamp carried in the first sensor measurement data, and then the first filter state data corresponding to the time between the reception time t2 and the generation time t1 of the first sensor measurement data can be obtained from the shared buffer for a subsequent measurement update process.

[0074] Since the shared buffer stores the filter state data within the last 1s, and the requirement for the availability of the first sensor measurement data is that the time interval between the generation time and the reception time of the first sensor measurement data cannot exceed 1s, it can be seen that the time setting of the shared buffer cache state data and the setting of the measurement data delay time in this application are compatible, the purpose is to ensure that subsequent measurement data can be fused with the first filter state data at the same time, to ensure time synchronization accuracy, and to improve fusion positioning accuracy.

[0075] In some embodiments of the present application, the measurement update and time update are performed by the second extended Kalman filter according to a preset update strategy based on the first sensor measurement data and the corresponding first filter state data to obtain the second filter state data, including: in the process of updating the time to the current moment, determining whether the second sensor measurement data is obtained; if the second sensor measurement data is obtained, determining the generation time of the second sensor measurement data, and determining whether the measurement update needs to be re-performed based on the comparison result of the generation time of the second sensor measurement data and the generation time of the first sensor measurement data; the determining of the fusion positioning result at the current moment based on the second filter state data includes: if the second sensor measurement data is not obtained, directly updating the shared buffer according to the second filter state data.

[0076] In an embodiment of the present application, when using EKF-2 to fuse and update the first sensor measurement data and the corresponding first filter state data, it is possible to determine whether new sensor measurement data, i.e., second sensor measurement data, is received during the update process, and adopt different strategies based on the different judgment results. For example, if second sensor measurement data is received during the process of performing a fusion update based on the first sensor measurement data, then the generation time of the second sensor measurement data can be first determined, compared with the generation time of the first sensor measurement data, and then a determination can be made based on the comparison result whether a new measurement update is required. If no new sensor measurement data is obtained during the process of updating the time to the current time, then the shared buffer can be directly updated based on the second filter state data obtained after the measurement update, and the next measurement data can be awaited.

[0077] The above process adopts different fusion strategies according to the time sequence of multi-sensor measurement data in the fusion process, so as to make full use of the measurement data of various sensors for fusion positioning and ensure the accuracy and stability of fusion positioning.

[0078] In some embodiments of the present application, determining whether re-measurement update is needed based on a result of comparing the generation time of the second sensor measurement data with the generation time of the first sensor measurement data includes: if the generation time of the second sensor measurement data is later than the generation time of the first sensor measurement data, determining that re-measurement update is needed; if the generation time of the second sensor measurement data is earlier than the generation time of the first sensor measurement data, determining that re-measurement update is not needed.

[0079] When comparing the generation time of the second sensor measurement data with the generation time of the first sensor measurement data, if the second sensor measurement data is generated after the first sensor measurement data but is received during the time update process of the first sensor measurement data, it means that the delayed but available sensor measurement data was not utilized in the original measurement update process. In this case, the measurement update can be performed again to ensure that the available first sensor measurement data and second sensor measurement data can both be utilized in the measurement update process.

[0080] If the second sensor measurement data is generated before the first sensor measurement data and is received during the time update process of the first sensor measurement data, it means that the original measurement update process has integrated all available sensor measurement data, so there is no need to re-measurement update.

[0081] In order to facilitate the understanding of the above embodiments, Figure 2 Figure 1 shows a schematic diagram of the fusion timing of multi-sensor measurement data in an embodiment of the present application. It can be seen that for EKF-1, it can stably output first filter state data based on the stably acquired IMU raw measurement data and cache it in real time in a shared buffer. For EKF-2, the sensor measurement data may have varying degrees of delay, different data output frequencies of different sensors, and the influence of external factors, resulting in unstable data output from each sensor.

[0082] Figure 2 Several common sensor measurement data forms are listed in the paper, including Lidar observations, GPS observations, and visual observations. Each sensor measurement data corresponds to its generation time T occur and receiving time T rec For example, for Lidar observation-1, its generation time is t1, but it is not received until t7. During the update process based on Lidar observation-1, GPS observation-1 and visual observation-1 are received. The generation time t2 of GPS observation-1 and the generation time t5 of visual observation-1 are both later than the generation time t1 of Lidar observation-1. Therefore, it is necessary to re-measure and update at this time.

[0083] For example, Lidar Observation-2 was generated at time t4 but was not received until time t8. During the update process based on Lidar Observation-2, Visual Observation-1 and Lidar Observation-1 were received. Since Visual Observation-1 was generated at time t5 later than Lidar Observation-2, it also needs to be re-measured and updated. However, since Lidar Observation-1 was generated at time t1 earlier than Lidar Observation-2, which is time t4, there is no omission problem at this time, and no need to re-measure and update. Therefore, the above process ensures that the measurement update process can fully utilize the measurement data of each sensor, improving the accuracy and stability of fusion positioning.

[0084] In some embodiments of the present application, determining the fused positioning result at the current moment based on the second filter state data includes: updating the shared buffer through the second extended Kalman filter based on the second filter state data; obtaining updated filter state data from the updated shared buffer through the first extended Kalman filter; updating the first filter state data based on the updated filter state data, and outputting the fused positioning result at the current moment.

[0085] After completing all measurement updates, EKF-2 will update the obtained second filter state data to the shared buffer. After the shared buffer is updated by EKF-2, EKF-1 will obtain all the information in the shared buffer and update its own state. With the updated state, it will continue to use the received IMU raw measurement data for state prediction at the current moment.

[0086] In addition, since the output frequency of EKF-2 mainly depends on whether new sensor measurement data is currently received, if no new sensor measurement data is received, no positioning data will be output, and the output frequency of EKF-1 is relatively stable, in order to ensure the stability of the output of the fused positioning result, the embodiment of the present application can ultimately use the current positioning result output by EKF-1 after updating its own state as the final fused positioning result.

[0087] In order to facilitate the understanding of the embodiments of this application, Figure 3As shown, a schematic diagram of the fusion positioning process of an autonomous driving vehicle in an embodiment of the present application is provided. The fusion positioning process of the autonomous driving vehicle in an embodiment of the present application is mainly divided into two parts. The first part is the state prediction based on EKF-1, and the second part is the measurement update based on EKF-2. Data is transmitted between EKF-1 and EKF-2 through a shared buffer, and the shared buffer is used to store filter state data within a period of time, such as 1s. EKF-1 performs state prediction based on the original measurement data of the IMU, obtains the first filter state data and caches it in the shared buffer. After receiving sensor measurement data such as Lidar positioning data, GPS positioning data or visual positioning data, EKF-2 obtains the corresponding filter state data from the shared buffer and performs measurement update. After the measurement update is completed, the obtained second filter state data is updated to the shared buffer. After the shared buffer is triggered to update by EKF-2, EKF-1 will obtain the second filter state data from the shared buffer to update its own state data and output the final fusion positioning result. This process is repeated continuously, thereby achieving real-time positioning of the autonomous driving vehicle.

[0088] In summary, the fusion positioning method for autonomous driving vehicles of this application has achieved at least the following technical effects:

[0089] 1) A shared buffer is used to cache the filter state data within a certain period of time. Based on this, the sensor measurement data is fused with the IMU raw measurement data at the same time, ensuring the time synchronization accuracy and improving the efficiency and accuracy of the fusion positioning.

[0090] 2) It makes full use of various sensor measurement data, avoids the loss of observation information caused by brute force fusion or removal, and improves the stability of fusion positioning;

[0091] 3) Using two extended Kalman filters improves positioning robustness. In theory, it can fuse any number of measurement information sources, such as delayed positioning information from LiDAR and visual positioning information, as well as zero-delay or low-delay positioning information, such as GPS positioning information.

[0092] 4) It has a long-term delay monitoring function. If the delay time of the sensor measurement data is too long and this state persists for more than a period of time, it proves that the sensor module is greatly affected by the computing power and the positioning information is unavailable. At this time, the positioning function of the sensor module will be automatically turned off, releasing the computing power occupied by it on the autonomous driving processor, thereby ensuring the normal computing power requirements of other modules.

[0093] The embodiment of the present application also provides a fusion positioning device 400 for an autonomous driving vehicle, such as Figure 4As shown, a fusion positioning device for an autonomous driving vehicle in an embodiment of the present application is provided. The device 400 includes: a first acquisition unit 410, a second acquisition unit 420, a first update unit 430, and a first determination unit 440, wherein:

[0094] A first acquiring unit 410 is configured to acquire first sensor measurement data;

[0095] A second acquiring unit 420 is configured to acquire corresponding first filter state data from a shared buffer according to the first sensor measurement data, wherein the shared buffer is configured to cache filter state data for a preset time length, the first filter state data being obtained by using a first extended Kalman filter;

[0096] a first updating unit 430 configured to perform measurement update and time update according to a preset update strategy using a second extended Kalman filter based on the first sensor measurement data and the corresponding first filter state data to obtain second filter state data, wherein the preset update strategy includes a fusion strategy for delayed sensor measurement data;

[0097] The first determining unit 440 is configured to determine a fusion positioning result at a current moment according to the second filter state data.

[0098] In some embodiments of the present application, the device further includes: a second determination unit, used to determine the reception time and generation time of the first sensor measurement data; a third determination unit, used to determine whether the first sensor measurement data is available based on the time interval between the reception time and the generation time; a shutdown unit, used to shut down the sensor module corresponding to the first sensor measurement data when the first sensor measurement data is unavailable and the duration of unavailability reaches a preset duration threshold; a second acquisition unit, used to obtain the corresponding first filter state data from the shared buffer based on the first sensor measurement data when the first sensor measurement data is available.

[0099] In some embodiments of the present application, the device includes: a third acquisition unit, used to acquire IMU original measurement data; a state prediction unit, used to perform state prediction based on the IMU original measurement data using the first extended Kalman filter to obtain the first filter state data.

[0100] In some embodiments of the present application, the second acquisition unit 420 is specifically used to: determine the reception time and generation time of the first sensor measurement data; and obtain the first filter state data corresponding to the reception time and generation time of the first sensor measurement data from the shared buffer.

[0101] In some embodiments of the present application, the first updating unit 430 is specifically used to: determine whether the second sensor measurement data is obtained in the process of updating the time to the current moment; if the second sensor measurement data is obtained, determine the generation time of the second sensor measurement data, and determine whether the measurement update needs to be re-performed based on the comparison result of the generation time of the second sensor measurement data and the generation time of the first sensor measurement data; the first determining unit 440 is specifically used to: if the second sensor measurement data is not obtained, directly update the shared buffer according to the second filter state data.

[0102] In some embodiments of the present application, the first updating unit 430 is specifically configured to: determine that re-measurement updating is required if the second sensor measurement data is generated later than the first sensor measurement data; and determine that re-measurement updating is not required if the second sensor measurement data is generated earlier than the first sensor measurement data.

[0103] In some embodiments of the present application, the first determination unit 440 is specifically used to: update the shared buffer through the second extended Kalman filter according to the second filter state data; obtain updated filter state data from the updated shared buffer through the first extended Kalman filter; update the first filter state data according to the updated filter state data, and output the fusion positioning result at the current moment.

[0104] It can be understood that the above-mentioned fusion positioning device of the autonomous driving vehicle can implement each step of the fusion positioning method of the autonomous driving vehicle provided in the aforementioned embodiment. The relevant explanations on the fusion positioning method of the autonomous driving vehicle are applicable to the fusion positioning device of the autonomous driving vehicle and will not be repeated here.

[0105] Figure 5 This is a schematic diagram of the structure of an electronic device according to an embodiment of the present application. Figure 5 At the hardware level, the electronic device includes a processor and, optionally, an internal bus, a network interface, and memory. The memory may include internal memory, such as high-speed random-access memory (RAM), or non-volatile memory, such as at least one disk drive. Of course, the electronic device may also include other hardware required for its services.

[0106] The processor, network interface, and memory can be interconnected via an internal bus, which can be an ISA (Industry Standard Architecture) bus, a PCI (Peripheral Component Interconnect) bus, or an EISA (Extended Industry Standard Architecture) bus. The bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 5 Only one bidirectional arrow is used in the diagram, but this does not mean that there is only one bus or one type of bus.

[0107] The memory is used to store programs. Specifically, the program may include program code, which includes computer operating instructions. The memory may include internal memory and non-volatile memory, and provides instructions and data to the processor.

[0108] The processor reads the corresponding computer program from the non-volatile memory into the internal memory and then runs it, forming a fusion positioning device for the autonomous vehicle at the logical level. The processor executes the program stored in the memory and is specifically used to perform the following operations:

[0109] Acquiring first sensor measurement data;

[0110] Obtaining corresponding first filter state data from a shared buffer according to the first sensor measurement data, the shared buffer being used to cache filter state data for a preset time length, the first filter state data being obtained through a first extended Kalman filter;

[0111] performing measurement updates and time updates according to a preset update strategy using a second extended Kalman filter based on the first sensor measurement data and the corresponding first filter state data to obtain second filter state data, wherein the preset update strategy includes a fusion strategy for delayed sensor measurement data;

[0112] The fusion positioning result at the current moment is determined according to the second filter state data.

[0113] The above application Figure 1The method performed by the fusion positioning device of an autonomous vehicle disclosed in the illustrated embodiment can be applied to a processor or implemented by a processor. The processor may be an integrated circuit chip with signal processing capabilities. During implementation, each step of the above method can be completed by hardware integrated logic circuits in the processor or by software instructions. The above processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components. It can implement or execute the various methods, steps, and logic block diagrams disclosed in the embodiments of this application. The general-purpose processor can be a microprocessor or any conventional processor. The steps of the method disclosed in conjunction with the embodiments of this application can be directly implemented and executed by a hardware decoding processor, or by a combination of hardware and software modules in the decoding processor. The software module can be located in a storage medium well-known in the art, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, etc. The storage medium is located in the memory, and the processor reads the information in the memory and, in conjunction with its hardware, completes the steps of the above method.

[0114] The electronic device may also perform Figure 1 A method for executing a fusion positioning device of an autonomous driving vehicle, and realizing a fusion positioning device of an autonomous driving vehicle in Figure 1 The functions of the illustrated embodiment will not be described in detail in the embodiments of the present application.

[0115] The embodiment of the present application also provides a computer-readable storage medium, which stores one or more programs, wherein the one or more programs include instructions, which, when executed by an electronic device including multiple application programs, can enable the electronic device to execute Figure 1 The method performed by the fusion positioning device of the autonomous driving vehicle in the embodiment shown is specifically used to perform:

[0116] Acquiring first sensor measurement data;

[0117] Obtaining corresponding first filter state data from a shared buffer according to the first sensor measurement data, the shared buffer being used to cache filter state data for a preset time length, the first filter state data being obtained through a first extended Kalman filter;

[0118] performing measurement updates and time updates according to a preset update strategy using a second extended Kalman filter based on the first sensor measurement data and the corresponding first filter state data to obtain second filter state data, wherein the preset update strategy includes a fusion strategy for delayed sensor measurement data;

[0119] The fusion positioning result at the current moment is determined according to the second filter state data.

[0120] It will be understood by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Thus, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0121] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowcharts and / or block diagrams, as well as combinations of processes and / or blocks in the flowcharts 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, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowcharts and / or block diagrams. Figure 1 a process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0122] These computer program instructions may also be stored in a computer readable memory that can direct a computer or other programmable data processing device to work in a specific manner, so that the instructions stored in the computer readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.

[0123] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operational steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing the instructions executed on the computer or other programmable device for implementing the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0124] In a typical configuration, a computing device includes one or more processors (CPUs), input / output interfaces, network interfaces, and memory.

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

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

[0127] It should also be noted that the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, commodity, or apparatus that includes a series of elements includes not only those elements but also other elements not explicitly listed, or includes elements inherent to such process, method, commodity, or apparatus. In the absence of further limitations, an element defined by the phrase "comprises a ..." does not exclude the presence of other identical elements in the process, method, commodity, or apparatus that includes the element.

[0128] Those skilled in the art will appreciate that the embodiments of the present application may be provided as methods, systems, or computer program products. Therefore, the present application may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Furthermore, the present application may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to magnetic disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0129] The foregoing is merely an embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various changes and variations. Any modifications, equivalent replacements, improvements, etc. made within the spirit and principles of the present application should all be included within the scope of the claims of the present application.

Claims

1. A fusion positioning method for an autonomous driving vehicle, wherein: The method comprises: Acquiring first sensor measurement data; Obtaining corresponding first filter state data from a shared buffer according to the first sensor measurement data, the shared buffer being used to cache filter state data for a preset time length, the first filter state data being obtained through a first extended Kalman filter; performing measurement updates and time updates according to a preset update strategy using a second extended Kalman filter based on the first sensor measurement data and the corresponding first filter state data to obtain second filter state data, wherein the preset update strategy includes a fusion strategy for delayed sensor measurement data; Determine the fusion positioning result at the current moment according to the second filter state data; The method of performing measurement update and time update according to a preset update strategy by the second extended Kalman filter based on the first sensor measurement data and the corresponding first filter state data to obtain the second filter state data includes: In the process of updating the time to the current moment, determining whether the second sensor measurement data is obtained; If the second sensor measurement data is obtained, determining the time when the second sensor measurement data is generated, and determining whether a new measurement update is required based on a result of comparing the time when the second sensor measurement data is generated with the time when the first sensor measurement data is generated; Determining the fusion positioning result at the current moment according to the second filter state data includes: If the second sensor measurement data is not obtained, the shared buffer is directly updated according to the second filter state data.

2. The method according to claim 1, wherein: After acquiring the first sensor measurement data, the method further includes: Determining a reception time and a generation time of the measurement data of the first sensor; determining whether the first sensor measurement data is available according to a time interval between the receiving moment and the generating moment; When the first sensor measurement data is unavailable and the duration of the unavailability reaches a preset duration threshold, shutting down the sensor module corresponding to the first sensor measurement data; When the first sensor measurement data is available, corresponding first filter state data is obtained from a shared buffer according to the first sensor measurement data.

3. The method according to claim 1, wherein: Before acquiring corresponding first filter state data from a shared buffer according to the first sensor measurement data, the method includes: Get IMU raw measurement data; Based on the IMU original measurement data, the first extended Kalman filter is used to perform state prediction to obtain the first filter state data.

4. The method according to claim 1, wherein: The acquiring corresponding first filter state data from the shared buffer according to the first sensor measurement data includes: Determining a reception time and a generation time of the measurement data of the first sensor; Acquire first filter state data corresponding to a time between a reception moment and a generation moment of the first sensor measurement data from the shared buffer.

5. The method of claim 1, wherein: The determining whether re-measurement update is required based on a result of comparing the generation time of the second sensor measurement data with the generation time of the first sensor measurement data includes: If the second sensor measurement data is generated later than the first sensor measurement data, it is determined that a new measurement update is required; If the second sensor measurement data is generated earlier than the first sensor measurement data, it is determined that re-measurement update is not required.

6. The method of claim 1, wherein: Determining the fusion positioning result at the current moment according to the second filter state data includes: updating the shared buffer by the second extended Kalman filter according to the second filter state data; Obtaining updated filter state data from the updated shared buffer using the first extended Kalman filter; The first filter state data is updated according to the updated filter state data, and the fusion positioning result at the current moment is output.

7. A fusion positioning device for an autonomous driving vehicle, wherein: The device comprises: A first acquiring unit, configured to acquire first sensor measurement data; a second acquiring unit, configured to acquire corresponding first filter state data from a shared buffer according to the first sensor measurement data, wherein the shared buffer is configured to cache the filter state data for a preset time length, the first filter state data being obtained by using a first extended Kalman filter; a first updating unit, configured to perform measurement update and time update according to a preset update strategy using a second extended Kalman filter based on the first sensor measurement data and the corresponding first filter state data, to obtain second filter state data, wherein the preset update strategy includes a fusion strategy for delayed sensor measurement data; a first determining unit, configured to determine a fused positioning result at a current moment according to the second filter state data; The first updating unit is specifically configured to: In the process of updating the time to the current moment, determining whether the second sensor measurement data is obtained; If the second sensor measurement data is obtained, determining the time when the second sensor measurement data is generated, and determining whether a new measurement update is required based on a result of comparing the time when the second sensor measurement data is generated with the time when the first sensor measurement data is generated; The first determining unit is specifically configured to: If the second sensor measurement data is not obtained, the shared buffer is directly updated according to the second filter state data.

8. An electronic device comprising: processor; as well as A memory arranged to store computer executable instructions, which when executed cause the processor to perform the method of any one of claims 1 to 6.

9. A computer-readable storage medium storing one or more programs, which, when executed by an electronic device including a plurality of application programs, causes the electronic device to execute the method according to any one of claims 1 to 6.

Citation Information

Patent Citations

  • Combined positioning method and system

    CN109781117A