Method and apparatus for positioning vehicle in complex environment, device, and storage medium
By combining camera equipment and inertial navigation equipment with real-time dynamic carrier phase differential technology in complex environments, the positioning accuracy problem caused by GNSS signal obstruction was solved, achieving centimeter-level high-precision vehicle positioning.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- CHERY AUTOMOBILE CO LTD
- Filing Date
- 2025-09-19
- Publication Date
- 2026-07-09
Smart Images

Figure CN2025122557_09072026_PF_FP_ABST
Abstract
Description
Vehicle positioning methods, devices, equipment and storage media in complex environments
[0001] This disclosure is based on and claims priority to Chinese Patent Application No. 202510002748.3, filed on January 2, 2025, entitled “Vehicle Positioning Method, Apparatus, Device and Storage Medium in Complex Environments”, the entire contents of which are incorporated herein by reference. Technical Field
[0002] This application relates to the field of vehicle control technology, and in particular to a vehicle positioning method, device, equipment and storage medium in complex environments. Background Technology
[0003] With the development of navigation and positioning technology, accurate and reliable vehicle positioning technology is being used more and more widely. Among them, the application of Global Navigation Satellite System (GNSS) positioning technology is relatively common. However, in complex environments such as tunnels and urban canyons, GNSS signals may experience multipath effects due to obstruction and reflection, which in turn affects positioning accuracy. Therefore, how to provide high-precision positioning even in complex environments has become a problem to be solved. Summary of the Invention
[0004] This application provides a vehicle positioning method, apparatus, device, and storage medium in complex environments, enabling accurate positioning even when global navigation satellite system data has significant errors. The technical solution is as follows.
[0005] On the one hand, a vehicle positioning method in complex environments is provided, the method comprising:
[0006] During the vehicle's operation, real-time global navigation satellite system data of the vehicle is collected through the vehicle's positioning device, and image frames of the driving environment are continuously collected through the vehicle's camera device.
[0007] When the error of the Global Navigation Satellite System (GNSS) data reaches the error condition, initial data is determined. The initial data refers to the GNSS data collected at multiple time points whose error has not reached the error condition and whose collection time is the latest.
[0008] Based on image frames acquired at multiple time points, the real-time relative motion information of the vehicle is determined, and the relative motion information includes at least one of the travel distance and rotation angle.
[0009] Based on the initial data and the relative motion information, the real-time first positioning data of the vehicle is determined;
[0010] The first positioning data is corrected using real-time dynamic carrier phase differential technology to obtain the real-time target positioning data of the vehicle.
[0011] In some embodiments, the method further includes:
[0012] During the vehicle's operation, inertial data is collected by the vehicle's inertial navigation device. The inertial data includes at least one of the vehicle's real-time acceleration data and angular velocity data.
[0013] Based on the initial data and the inertial data, the real-time second positioning data of the vehicle is obtained;
[0014] The step of using real-time dynamic carrier phase differential technology to correct the first positioning data to obtain the real-time target positioning data of the vehicle includes:
[0015] The first positioning data is corrected by using real-time dynamic carrier phase differential technology, and the second positioning data and the corrected first positioning data are fused to obtain the real-time target positioning data of the vehicle.
[0016] In some embodiments, obtaining the vehicle's real-time second positioning data based on the initial data and the inertial data includes:
[0017] The initial data is corrected using real-time dynamic carrier phase differential technology, and the second positioning data is obtained based on the corrected initial data and the inertial data.
[0018] Alternatively, based on the initial data and the inertial data, the real-time third positioning data of the vehicle is obtained, and the third positioning data is corrected using real-time dynamic carrier phase differential technology to obtain the second positioning data.
[0019] In some embodiments, fusing the second positioning data and the corrected first positioning data to obtain the real-time target positioning data of the vehicle includes:
[0020] The average of the second positioning data and the corrected first positioning data is determined as the target positioning data; or...
[0021] The target positioning data is obtained by weighted summing of the second positioning data and the corrected first positioning data.
[0022] In some embodiments, the error condition includes at least one of the following:
[0023] The signal-to-noise ratio of the Global Navigation Satellite System data is less than a first threshold.
[0024] The position error at the current moment, determined based on the data from the Global Navigation Satellite System, reaches the second threshold.
[0025] The velocity error at the current moment, determined based on the data from the Global Navigation Satellite System, reaches the third threshold.
[0026] The number of satellites generating the Global Navigation Satellite System data is less than the fourth threshold.
[0027] In some embodiments, the method further includes:
[0028] In the first positioning mode, if the error of the real-time acquired global navigation satellite system data no longer meets the error condition, the first positioning mode will be switched to the second positioning mode. The first positioning mode refers to the mode of acquiring the real-time target positioning data of the vehicle based on image frames.
[0029] In the second positioning mode, real-time dynamic carrier phase differential technology is used to correct the real-time global navigation satellite system data to obtain the real-time target positioning data of the vehicle.
[0030] In some embodiments, determining the real-time relative motion information of the vehicle based on image frames acquired at multiple time points includes:
[0031] Extract feature points from each image frame, the feature points including at least one of the edge and corner points in the image frame;
[0032] Feature matching is performed on adjacent image frames based on feature points, and the real-time relative motion information of the vehicle is determined based on the matching results of multiple image frames.
[0033] On the other hand, a vehicle positioning device for complex environments is provided, the device comprising:
[0034] The acquisition module is used to acquire real-time global navigation satellite system data of the vehicle through the positioning device on the vehicle during the vehicle's operation, and to continuously acquire image frames of the driving environment through the camera device on the vehicle.
[0035] The determination module is used to determine initial data when the error of the global navigation satellite system data reaches the error condition. The initial data refers to the global navigation satellite system data collected at multiple time points whose error has not reached the error condition and whose collection time is the latest.
[0036] The determining module is further configured to determine the real-time relative motion information of the vehicle based on image frames acquired at multiple time points, wherein the relative motion information includes at least one of the travel distance and rotation angle.
[0037] The determining module is further configured to determine the vehicle's real-time first positioning data based on the initial data and the relative motion information;
[0038] The correction module is also used to correct the first positioning data using real-time dynamic carrier phase differential technology to obtain the real-time target positioning data of the vehicle.
[0039] In some embodiments, the acquisition module is further configured to:
[0040] During the vehicle's operation, inertial data is collected by the vehicle's inertial navigation device. The inertial data includes at least one of the vehicle's real-time acceleration data and angular velocity data.
[0041] The determining module is further configured to determine the vehicle's real-time second positioning data based on the initial data and the inertial data;
[0042] The correction module is used for:
[0043] The first positioning data is corrected by using real-time dynamic carrier phase differential technology, and the second positioning data and the corrected first positioning data are fused to obtain the real-time target positioning data of the vehicle.
[0044] In some embodiments, the determining module is configured to:
[0045] The initial data is corrected using real-time dynamic carrier phase differential technology, and the second positioning data is obtained based on the corrected initial data and the inertial data.
[0046] Alternatively, based on the initial data and the inertial data, the real-time third positioning data of the vehicle is obtained, and the third positioning data is corrected using real-time dynamic carrier phase differential technology to obtain the second positioning data.
[0047] In some embodiments, the correction module is configured to:
[0048] The average of the second positioning data and the corrected first positioning data is determined as the target positioning data; or...
[0049] The target positioning data is obtained by weighted summing of the second positioning data and the corrected first positioning data.
[0050] In some embodiments, the error condition includes at least one of the following:
[0051] The signal-to-noise ratio of the Global Navigation Satellite System data is less than a first threshold.
[0052] The position error at the current moment, determined based on the data from the Global Navigation Satellite System, reaches the second threshold.
[0053] The velocity error at the current moment, determined based on the data from the Global Navigation Satellite System, reaches the third threshold.
[0054] The number of satellites generating the Global Navigation Satellite System data is less than the fourth threshold.
[0055] In some embodiments, the apparatus further includes a switching module for:
[0056] In the first positioning mode, if the error of the real-time acquired global navigation satellite system data no longer meets the error condition, the first positioning mode will be switched to the second positioning mode. The first positioning mode refers to the mode of acquiring the real-time target positioning data of the vehicle based on image frames.
[0057] The correction module is further configured to, in the second positioning mode, use real-time dynamic carrier phase differential technology to correct the real-time global navigation satellite system data to obtain the real-time target positioning data of the vehicle.
[0058] In some embodiments, the determining module is configured to:
[0059] Extract feature points from each image frame, the feature points including at least one of the edge and corner points in the image frame;
[0060] Feature matching is performed on adjacent image frames based on feature points, and the real-time relative motion information of the vehicle is determined based on the matching results of multiple image frames.
[0061] On the other hand, a vehicle controller is provided, which includes a processor and a memory. The memory stores at least one piece of program code, which is loaded and executed by the processor to implement the vehicle positioning method in the complex environment described above.
[0062] On the other hand, a computer-readable storage medium is provided, wherein at least one piece of program code is stored in the storage medium, the at least one piece of program code being loaded and executed by a processor to implement the above-described vehicle positioning method in complex environments.
[0063] On the other hand, a computer program product is provided, the product storing at least one piece of program code, the at least one piece of program code being executed by a processor to implement the above-described vehicle positioning method in complex environments.
[0064] It should be understood that the above general description and the following detailed description are merely exemplary and do not limit this disclosure.
[0065] In this embodiment, when the vehicle's positioning error based on GNSS data is large, the real-time relative motion information of the vehicle is determined based on image frames collected from the driving environment. The most accurate GNSS data is used as initial data. Combining the initial data and the relative motion information, the real-time positioning data of the vehicle is obtained. Since the vehicle's relative motion information depends on environmental features captured by the camera equipment, it is not affected by satellite signals or interference, thus the determined relative motion information is accurate. Combined with the initial data provided by GNSS data, precise positioning data can be obtained, reducing the overall positioning error and achieving accurate positioning even when GNSS data errors are large. Furthermore, real-time dynamic carrier phase differential technology is used to correct the positioning data. Since real-time dynamic carrier phase differential technology can eliminate the total satellite orbital error, clock error, and most of the ionospheric and tropospheric errors in the positioning data, it can further improve the accuracy and precision of the vehicle's positioning data. GNSS positioning errors are at the meter level, and high-precision positioning errors are at the centimeter level; this method can still achieve centimeter-level positioning capability even when satellite signals are poor. Attached Figure Description
[0066] Figure 1 is a schematic diagram illustrating the implementation environment of a vehicle positioning method in a complex environment according to an exemplary embodiment of this application;
[0067] Figure 2 is a flowchart illustrating a vehicle positioning method in a complex environment according to an exemplary embodiment of this application;
[0068] Figure 3 is a flowchart illustrating a vehicle positioning method in a complex environment according to an exemplary embodiment of this application;
[0069] Figure 4 is a block diagram illustrating a vehicle positioning device in a complex environment according to an exemplary embodiment of this application;
[0070] Figure 5 is a block diagram illustrating a vehicle controller according to an exemplary embodiment of this application. Detailed Implementation
[0071] To make the technical solution and advantages of this application clearer, the embodiments of this application will be described in further detail below.
[0072] The terms "first," "second," "third," and "fourth," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish different objects, not to describe a specific order. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or apparatuses.
[0073] It should be noted that all information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, stored data, displayed data, etc.), and signals involved in this application have been authorized by the user or fully authorized by all parties, and the collection, use, and processing of related data must comply with the relevant laws, regulations, and standards of the relevant countries and regions. For example, the positioning data and image frames involved in this application were obtained with full authorization.
[0074] Please refer to Figure 1, which illustrates a schematic diagram of the implementation environment of a vehicle positioning method in a complex environment according to an exemplary embodiment of this application. This implementation environment includes a vehicle controller 10, a positioning device 20, a camera device 30, and an inertial navigation device 40. The vehicle controller 10 can communicate with the positioning device 20, the camera device 30, and the inertial navigation device 40 via a CAN (Controller Area Network) bus. The vehicle controller 10 can also communicate with a user terminal via a wireless network. The vehicle controller 10 collects real-time global navigation satellite system data of the vehicle through the positioning device 20, image frames of the vehicle's driving road through the camera device 30, and inertial data of the vehicle during driving through the inertial navigation device 40, to obtain real-time vehicle positioning data. This process will be described in detail in subsequent embodiments. The vehicle in this embodiment can be a new energy vehicle or a fuel-powered vehicle; new energy vehicles include pure electric vehicles or hybrid vehicles.
[0075] Please refer to Figure 2, which shows a flowchart of a vehicle positioning method in a complex environment according to an exemplary embodiment of this application. Referring to Figure 2, the method includes the following steps.
[0076] Step 201: During the vehicle's operation, the vehicle controller collects real-time global navigation satellite system data of the vehicle through the positioning device on the vehicle, and continuously collects image frames on the road through the camera device on the vehicle.
[0077] In this embodiment, the positioning device can be a GNSS (Global Navigation Satellite System) receiver. This receiver is a high-precision GNSS receiver that supports multiple frequency bands and systems. It receives data from the Global Navigation Satellite System, meaning it receives signals from multiple satellites. These signals contain satellite position information and signal transmission timestamps. Based on the received data, the GNSS receiver outputs positioning data, including latitude, longitude, altitude, and speed. This data can be used for navigation and positioning services.
[0078] The camera device can be a monocular or binocular camera. Optionally, the camera device is installed at the front of the vehicle, that is, a forward-facing camera, capable of acquiring high-definition images at a high frame rate.
[0079] Step 202: When the error of the Global Navigation Satellite System (GNSS) data reaches the error condition, the vehicle controller determines the initial data. The initial data refers to the GNSS data collected at multiple time points, where the error has not reached the error condition and the data was collected at the latest time.
[0080] In some embodiments, the error condition includes at least one of the following:
[0081] (1) The signal-to-noise ratio of the Global Navigation Satellite System data is less than the first threshold.
[0082] Signal-to-noise ratio (SNR) is the ratio of navigation signal power to noise power, calculated logarithmically and measured in decibels (dB). SNR reflects the relationship between signal strength and the internal noise level of the GNSS receiver. Therefore, a high SNR indicates high signal quality and provides more accurate positioning results, while a low SNR indicates poor signal quality and inaccurate positioning results. Thus, when the SNR is low, determining whether the error in the GNSS data meets the error criteria is convenient and efficient.
[0083] (2) The position error at the current time determined based on global navigation satellite system data reaches the second threshold.
[0084] The position error at the current moment can be determined based on the position and velocity at the previous moment and the current position. For example, the difference between the calculated position and the position determined by the Global Navigation Satellite System (GNSS) data is the position error at the current moment. The larger the position error, the lower the positioning accuracy.
[0085] (3) The velocity error at the current moment determined based on data from the Global Navigation Satellite System reaches the third threshold.
[0086] The velocity error at the current moment can be determined based on the velocity and acceleration at the previous moment and the velocity at the current moment. For example, the velocity at the current moment is calculated based on the velocity and acceleration at the previous moment, and the difference between the calculated velocity and the velocity determined by the Global Navigation Satellite System (GNSS) data is the velocity error at the current moment. The larger the velocity error, the lower the positioning accuracy.
[0087] (4) The number of satellites generating global navigation satellite system data is less than the fourth threshold.
[0088] The number of satellites generating Global Navigation Satellite System (GNSS) data can change in real time due to variations in positioning signal strength. The more satellites, the higher the positioning accuracy.
[0089] In some embodiments, at least one of the above errors can be weighted and summed to obtain a comprehensive error value. If the comprehensive error value reaches an error threshold, it can be determined that the error of the global navigation satellite system data has reached the error condition.
[0090] Step 203: The vehicle controller determines the real-time relative motion information of the vehicle based on image frames collected at multiple time points.
[0091] In some embodiments, the process of determining the real-time relative motion information of a vehicle based on image frames acquired at multiple time points includes the following steps: extracting feature points from each image frame, wherein the feature points include at least one of the edges and corners in the image frame; performing feature matching on adjacent image frames based on the feature points; and determining the real-time relative motion information of the vehicle based on the matching results of multiple image frames.
[0092] In some embodiments, outliers or data are also removed during the feature point extraction process.
[0093] The process involves feature matching between adjacent image frames based on feature points to determine the positional changes of these feature points within each frame. The matching result indicates the positional changes of the feature points in adjacent image frames. Based on this matching result, the relative motion information of the camera (video recording device) is obtained, including rotation angle and translation distance. Then, the relative motion information of the vehicle is derived from the camera's relative motion information. Specifically, the relative motion information of the vehicle is obtained by performing coordinate transformation on the camera's relative motion information, i.e., transforming the camera coordinate system to the world coordinate system.
[0094] In some embodiments, a sparse map can also be built using real-time relative motion information of the vehicle to provide positioning data.
[0095] Step 204: The vehicle controller determines the vehicle's real-time first positioning data based on the initial data and relative motion information.
[0096] The relative motion information includes at least one of the travel distance and rotation angle, where the rotation angle is the vehicle's orientation angle, including yaw, pitch, and roll angles. Therefore, the rotation angle in the initial data, after changing with the rotation angle in the relative motion information, yields the real-time rotation angle in the first positioning data. Similarly, the position information in the initial data, after changing with the travel distance in the relative motion information, yields the real-time position information in the first positioning data.
[0097] In some embodiments, the vehicle has multiple camera devices. Image frames acquired by each camera device are used to determine the relative motion information corresponding to each camera device. This relative motion information is then fused, such as by weighted summation, to obtain the target relative motion information. Based on the initial data and the target relative motion information, the vehicle's real-time first positioning data is obtained. Alternatively, based on the initial data and the relative motion information corresponding to each camera device, first positioning data corresponding to each camera device is obtained. This first positioning data is then fused, such as by weighted summation, to obtain the vehicle's real-time first positioning data.
[0098] In this embodiment, multiple camera devices are used to capture image frames, and then the positioning data corresponding to the multiple image frames are fused to make the final first positioning data more accurate.
[0099] Step 205: The vehicle controller uses real-time dynamic carrier phase differential technology to correct the first positioning data and obtain the real-time target positioning data of the vehicle.
[0100] In this embodiment, Real-time Kinematic (RTK) technology is implemented through the following steps: the base station receives GNSS data, and determines positioning error data based on the actual position of the base station and the position of the base station determined based on the GNSS data; the vehicle controller receives the positioning error data sent by the base station, and corrects its own GNSS data based on the positioning error data to obtain accurate GNSS data, thereby obtaining accurate positioning data.
[0101] In this embodiment, the vehicle controller receives positioning error data sent by the base station. This positioning error data can be the positioning error data at the time of initial data acquisition. Then, based on the positioning error data, the first positioning data is corrected to obtain the target positioning data.
[0102] In this embodiment, the relative motion information of the vehicle is determined by image frames, thereby obtaining positioning data. This technology can be called Simultaneous Localization and Mapping (SLAM). This technology can provide relatively high-precision local positioning information, thus it is beneficial to improve the situation of poor GNSS data positioning, to ensure that high-precision positioning can continue to be provided within a certain time or distance, and further improve the accuracy and robustness of positioning data.
[0103] In some embodiments, during vehicle operation, the vehicle controller also collects inertial data during vehicle operation via an inertial navigation device on the vehicle. The inertial data includes at least one of the vehicle's real-time acceleration data and angular velocity data. Based on the initial data and the inertial data, real-time second positioning data of the vehicle is determined. The above-mentioned method of using real-time dynamic carrier phase differential technology to correct the first positioning data to obtain real-time target positioning data of the vehicle further includes the following implementation: using real-time dynamic carrier phase differential technology to correct the first positioning data, fusing the second positioning data and the corrected first positioning data to obtain real-time target positioning data of the vehicle.
[0104] The inertial navigation device includes at least one of an accelerometer and a gyroscope, used to detect acceleration and angular velocity, respectively. In this embodiment, after correcting the first positioning data using real-time dynamic carrier phase differential technology, the corrected first positioning data is fused with the second positioning data obtained from the inertial data. This results in more accurate target positioning data, further improving the precision and robustness of the positioning data.
[0105] Specifically, speed data is determined based on inertial data, and then combined with the acquisition time of inertial data and the acquisition time of initial data, the distance the vehicle moves during the acquisition time of inertial data can be obtained. Based on this distance and the initial data, the second positioning data can be obtained.
[0106] In some embodiments, the process of determining the vehicle's real-time second positioning data based on initial data and inertial data includes the following two implementation methods.
[0107] The first method involves the vehicle controller employing real-time dynamic carrier phase differential technology to correct the initial data. Based on the corrected initial data and inertial data, the second positioning data is obtained.
[0108] In this implementation, the initial data is first corrected based on real-time dynamic carrier phase differential technology to make the initial data more accurate. Then, the second positioning data is obtained by combining inertial data, making the obtained second positioning data more accurate.
[0109] The second method involves the vehicle controller obtaining real-time third positioning data of the vehicle based on initial data and inertial data. Then, real-time dynamic carrier phase differential technology is used to correct the third positioning data to obtain the second positioning data.
[0110] In this implementation, after obtaining the positioning data based on the initial data and inertial data, real-time dynamic carrier phase differential technology is used for correction, making the obtained second positioning data more accurate.
[0111] In some embodiments, the process of fusing the second positioning data and the corrected first positioning data includes the following implementation: determining the average of the second positioning data and the corrected first positioning data as the target positioning data; or, weighted summing the second positioning data and the corrected first positioning data to obtain the target positioning data. In this embodiment, using the average or weighted sum of the two types of data as the target positioning data allows the obtained target positioning data to fuse the two types of data, thereby making the target positioning data more accurate.
[0112] The weights of the corrected first and second positioning data can be set as needed. Optionally, a Kalman filter or a particle filter can be used to fuse the second positioning data and the corrected first positioning data.
[0113] The Kalman filter or particle filter can perform a weighted average of the two positioning data. In some embodiments, during the fusion of the two data, a larger weight is assigned to the corrected first positioning data and a smaller weight is assigned to the second positioning data, so that the first positioning data plays a greater role in determining the target positioning data.
[0114] In this embodiment, the camera device not only captures image frames but also records the timestamp of each image frame. Similarly, the inertial navigation device not only captures instantaneous acceleration and angular velocity data but also records the timestamps of the acceleration and angular velocity data to facilitate the subsequent fusion of first and second positioning data from the same time.
[0115] Referring to Figure 3, which is a flowchart of a vehicle positioning method in a complex environment provided by an embodiment of this application, in the case of obtaining positioning data by correcting GNSS data using RTK technology, an error monitoring module detects the error of the GNSS data in real time. If the error is normal, high-precision positioning is performed using the GNSS data. If the error is abnormal, initial data from the GNSS data is acquired and combined with continuously acquired image frames to obtain first positioning data, which is then corrected based on RTK technology. Further, the initial data is combined with inertial data to obtain second positioning data. The corrected first and second positioning data are then fused to obtain high-precision positioning data.
[0116] In some embodiments, when the Global Navigation Satellite System (GNSS) data is restored to its original accuracy, i.e., the error no longer meets the error condition, the system switches to positioning based on GNSS data. Specifically, in the first positioning mode, if the error of the real-time acquired GNSS data no longer meets the error condition, the first positioning mode is switched to a second positioning mode. The first positioning mode refers to the mode of acquiring real-time target positioning data of the vehicle based on image frames. In the second positioning mode, real-time dynamic carrier phase differential technology is used to correct the real-time GNSS data to obtain the vehicle's real-time target positioning data.
[0117] In this embodiment, after the accuracy of the Global Navigation Satellite System (GNSS) data is restored, positioning is performed based on the GNSS data, thus avoiding the problem of large cumulative positioning errors caused by using image frames for positioning for a long time.
[0118] In this embodiment of the application, after restoring the accuracy of the global navigation satellite system data, positioning data obtained through multiple methods can be fused to obtain further accurate positioning data.
[0119] In the first implementation mode, if the error of the real-time acquired Global Navigation Satellite System data no longer meets the error condition in the first positioning mode, the first positioning mode is switched to the third positioning mode. In the third positioning mode, real-time dynamic carrier phase differential technology is used to correct the real-time Global Navigation Satellite System data to obtain the third positioning data. The third positioning data and the corrected first positioning data are fused to obtain the real-time target positioning data of the vehicle.
[0120] The second implementation method involves switching from the first positioning mode to the fourth positioning mode if the error of the real-time collected global navigation satellite system data no longer meets the error condition in the first positioning mode. In the fourth positioning mode, real-time dynamic carrier phase differential technology is used to correct the real-time global navigation satellite system data to obtain the third positioning data. The third positioning data, the corrected first positioning data, and the second positioning data are fused to obtain the real-time target positioning data of the vehicle.
[0121] The third implementation method is as follows: In the first positioning mode, if the error of the real-time collected global navigation satellite system data no longer meets the error condition, the first positioning mode is switched to the fifth positioning mode; in the fifth positioning mode, real-time dynamic carrier phase differential technology is used to correct the real-time global navigation satellite system data to obtain the third positioning data; the third positioning data and the second positioning data are fused to obtain the real-time target positioning data of the vehicle.
[0122] Among the above implementation methods, after the accuracy of the Global Navigation Satellite System (GNSS) data is restored, the GNSS data and positioning data obtained through other means are fused to obtain the final positioning data. In this way, the final positioning data is obtained by fusing positioning data obtained from multiple means, which further improves the accuracy and robustness of the positioning data.
[0123] In this embodiment, the vehicle controller can determine target positioning data through different modules. These modules include a positioning monitoring module, a vision module, an inertial navigation module, and a data fusion module. The positioning monitoring module detects whether the error in the Global Navigation Satellite System (GNSS) data meets the error condition. If the error does not meet the error condition, real-time dynamic carrier phase differential technology is used to correct the GNSS data to obtain real-time target positioning data. If the error meets the error condition, the system switches to a first positioning mode, acquires image frames collected by the vision module, calculates the vehicle's relative motion information using image frames within a certain time window, and calculates the latest first positioning data with the initial data. Simultaneously, the inertial navigation module calculates the vehicle's relative motion information and obtains the latest second positioning data. The fusion module then fuses the two types of positioning data to obtain the final target positioning data.
[0124] It should be noted that since using image frames and inertial data to obtain positioning data for a long time will produce a large cumulative error, the duration of the first positioning mode is limited. That is, if the duration of the first positioning mode exceeds the duration threshold or the distance traveled by the vehicle in the first positioning mode reaches the distance threshold, the system will switch back to the second positioning mode.
[0125] In this embodiment, positioning is achieved through image frames, providing stable short-term positioning even when Global Navigation Satellite System (GNSS) signals are blocked or lost. This addresses the high-precision positioning needs arising from inaccurate GNSS data positioning in complex environments. Furthermore, this solution can process and fuse data from multiple sensors in real time, ensuring both real-time performance and reliability of the positioning.
[0126] In this embodiment, when the vehicle's positioning error based on Global Navigation Satellite System (GNSS) data is large, the real-time relative motion information of the vehicle is determined based on image frames collected from the driving environment. The most accurate GNSS data is used as initial data. Combining the initial data and the relative motion information yields the vehicle's real-time positioning data. Since the vehicle's relative motion information depends on environmental features captured by the camera equipment and is unaffected by satellite signals or interference, the determined relative motion information is accurate. Furthermore, combining this with the initial data provided by the GNSS data yields precise positioning data, reducing the overall positioning error and enabling accurate positioning even when the GNSS data error is large. Moreover, real-time dynamic carrier phase differential technology is employed to correct the positioning data. This technology can eliminate orbital errors, clock errors, and most ionospheric and tropospheric errors in the positioning data, further improving the accuracy and precision of the vehicle's positioning data.
[0127] Please refer to Figure 4, which shows a block diagram of a vehicle positioning device in a complex environment according to an exemplary embodiment of this application. The device includes:
[0128] The acquisition module 401 is used to acquire real-time global navigation satellite system data of the vehicle through the positioning device on the vehicle during the vehicle's operation, and to continuously acquire image frames of the driving environment through the camera device on the vehicle.
[0129] The determination module 402 is used to determine the initial data when the error of the global navigation satellite system data reaches the error condition. The initial data refers to the global navigation satellite system data that has not reached the error condition and was collected at the latest time among the global navigation satellite system data collected at multiple time points.
[0130] The determining module 402 is also used to determine the real-time relative motion information of the vehicle based on image frames acquired at multiple time points, wherein the relative motion information includes at least one of the travel distance and rotation angle.
[0131] The determining module 402 is also used to determine the vehicle's real-time first positioning data based on the initial data and relative motion information;
[0132] The correction module 403 is also used to correct the first positioning data by using real-time dynamic carrier phase differential technology to obtain real-time target positioning data of the vehicle.
[0133] In some embodiments, the acquisition module 401 is further configured to:
[0134] During the vehicle's operation, inertial data is collected by the vehicle's inertial navigation equipment. The inertial data includes at least one of the vehicle's real-time acceleration data and angular velocity data.
[0135] The determination module 402 is also used to determine the vehicle's real-time second positioning data based on inertial data;
[0136] Correction module 403 is used for:
[0137] The first positioning data is corrected by using real-time dynamic carrier phase differential technology. The second positioning data and the corrected first positioning data are then fused to obtain the real-time target positioning data of the vehicle.
[0138] In some embodiments, the determining module 402 is configured to:
[0139] The initial data is corrected using real-time dynamic carrier phase differential technology. Based on the corrected initial data and inertial data, the second positioning data is obtained.
[0140] Alternatively, based on the initial data and inertial data, the vehicle's real-time third positioning data can be obtained. Then, real-time dynamic carrier phase differential technology can be used to correct the third positioning data to obtain the second positioning data.
[0141] In some embodiments, the correction module 403 is configured to:
[0142] The average of the second positioning data and the corrected first positioning data is determined as the target positioning data; or...
[0143] The target positioning data is obtained by weighted summing of the second positioning data and the corrected first positioning data.
[0144] In some embodiments, the error condition includes at least one of the following:
[0145] The signal-to-noise ratio of Global Navigation Satellite System data is less than the first threshold;
[0146] The position error at the current moment, determined based on data from the Global Navigation Satellite System, has reached the second threshold.
[0147] The velocity error at the current moment, determined based on data from the Global Navigation Satellite System, has reached the third threshold.
[0148] The number of satellites generating Global Navigation Satellite System data is less than the fourth threshold.
[0149] In some embodiments, the apparatus further includes a switching module for:
[0150] In the first positioning mode, which acquires real-time target positioning data of the vehicle based on image frames, if the error of the real-time collected global navigation satellite system data no longer meets the error condition, the first positioning mode will be switched to the second positioning mode.
[0151] The correction module 403 is also used in the second positioning mode to correct the real-time global navigation satellite system data by using real-time dynamic carrier phase differential technology to obtain the vehicle's real-time target positioning data.
[0152] In some embodiments, the determining module 402 is configured to:
[0153] Extract feature points from each image frame, where the feature points include at least one of the edge and corner points in the image frame;
[0154] Feature matching is performed on adjacent image frames based on feature points, and the real-time relative motion information of the vehicle is determined based on the matching results of multiple image frames.
[0155] In this embodiment, when the vehicle's positioning error based on Global Navigation Satellite System (GNSS) data is large, the real-time relative motion information of the vehicle is determined based on image frames collected from the driving environment. The most accurate GNSS data is used as the initial data. Combining the initial data and the relative motion information, the real-time positioning data of the vehicle is obtained. Since the relative motion information of the vehicle depends on the environmental features captured by the camera equipment, it is not affected by satellite signals or interference. The relative motion information determined in this way is accurate. Furthermore, by combining the initial data provided by the GNSS data, accurate positioning data can be obtained, reducing the overall positioning error. In addition, real-time dynamic carrier phase differential technology is used to correct the positioning data. Since real-time dynamic carrier phase differential technology can eliminate the total satellite orbital error, clock error, and most of the ionospheric and tropospheric errors in the positioning data, the accuracy and precision of the vehicle's positioning data can be further improved.
[0156] It should be noted that the vehicle positioning device in complex environments provided in the above embodiments is only illustrated by the division of the above functional modules when performing vehicle control. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the vehicle controller can be divided into different functional modules to complete all or part of the functions described above. In addition, the vehicle positioning device in complex environments provided in the above embodiments and the vehicle positioning method embodiments in complex environments belong to the same concept, and the specific implementation process is detailed in the method embodiments, which will not be repeated here.
[0157] Typically, the vehicle controller 500 includes: a main control module 501, a CAN interface 502, a hard-wired input interface 503, and a hard-wired output interface 504. The main control module 501 is connected to the CAN interface 502, the hard-wired input interface 503, and the hard-wired output interface 504, respectively.
[0158] The main control module 501 typically includes a processor and memory. The processor may include one or more processing cores, such as a quad-core processor or a penta-core processor. The processor may be implemented using at least one hardware form of DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), or PLA (Programmable Logic Array). The processor may also include a main processor and a coprocessor. The main processor, also known as a CPU (Central Processing Unit), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, the processor may integrate a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content required to be displayed on the vehicle's display screen. In some embodiments, the processor may also include an AI (Artificial Intelligence) processor, which is used to handle computational operations related to machine learning. The memory may include one or more computer-readable storage media, which may be non-transitory. The memory may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In some embodiments, a non-transitory computer-readable storage medium in the memory is used to store at least one computer program, which is executed by a processor to implement the vehicle positioning method in a complex environment provided in the method embodiments of this application.
[0159] The CAN interface 502 can include a powertrain CAN interface, a motor CAN interface, and a diagnostic CAN interface. The powertrain CAN interface is used to communicate with the vehicle's powertrain module, the motor CAN interface is used to communicate with the vehicle's motor controller, and the diagnostic CAN interface is used to communicate with diagnostic equipment.
[0160] The hard-wired input interface 503 is used to receive hard-wired control signals. The hard-wired output interface 504 is used to send control commands to the vehicle's electronic control components, causing the vehicle's electronic control components to perform corresponding actions. The vehicle's electronic control components include a power management system, a motor controller, an on-board charger, and a body control system.
[0161] The main control module 501 can communicate with the vehicle's powertrain module, motor controller, and diagnostic equipment via the CAN interface 502, and generate control commands based on the hard-wired control signals received by the hard-wired input interface 503, so as to send the control commands to the vehicle's electronic control components via the hard-wired output interface 504.
[0162] Those skilled in the art will understand that the structure shown in Figure 5 does not constitute a limitation on the vehicle controller 500, and may include more or fewer components than shown, or combine certain components, or use different component arrangements.
[0163] This application also provides a computer-readable storage medium storing at least one line of program code, which is loaded and executed by a processor to implement the vehicle positioning method in complex environments described in any of the above implementations. Optionally, the storage medium can be a non-transitory computer-readable storage medium, such as ROM (Read-Only Memory), RAM (Random Access Memory), CD-ROM (Compact Disc Read-Only Memory), magnetic tape, floppy disk, and optical data storage devices.
[0164] This application also provides a computer program product that stores at least one piece of program code, which is loaded and executed by a processor to implement the vehicle positioning method in complex environments as shown in the above embodiments.
[0165] In some embodiments, the computer program product involved in this application can be deployed and executed on a vehicle controller, or on multiple vehicle controllers located in one location, or on multiple vehicle controllers distributed in multiple locations and interconnected through a communication network. Multiple vehicle controllers distributed in multiple locations and interconnected through a communication network can form a blockchain system.
[0166] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.
[0167] The above description is only for the purpose of enabling those skilled in the art to understand the technical solution of this application, and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A vehicle positioning method in a complex environment, wherein, The method includes: During the vehicle's operation, real-time global navigation satellite system data of the vehicle is collected through the vehicle's positioning device, and image frames of the driving environment are continuously collected through the vehicle's camera device. When the error of the Global Navigation Satellite System (GNSS) data reaches the error condition, initial data is determined. The initial data refers to the GNSS data collected at multiple time points whose error has not reached the error condition and whose collection time is the latest. Based on image frames acquired at multiple time points, the real-time relative motion information of the vehicle is determined, and the relative motion information includes at least one of the travel distance and rotation angle. Based on the initial data and the relative motion information, the real-time first positioning data of the vehicle is determined; The first positioning data is corrected using real-time dynamic carrier phase differential technology to obtain the real-time target positioning data of the vehicle.
2. The method according to claim 1, wherein, The method further includes: During the driving process of the vehicle, inertial data of the vehicle during driving is collected by the inertial navigation device on the vehicle. The inertial data includes at least one of the real-time acceleration data and angular velocity data of the vehicle. Based on the initial data and the inertial data, the real-time second positioning data of the vehicle is determined; The step of using real-time dynamic carrier phase differential technology to correct the first positioning data to obtain the real-time target positioning data of the vehicle includes: The first positioning data is corrected by using real-time dynamic carrier phase differential technology, and the second positioning data and the corrected first positioning data are fused to obtain the real-time target positioning data of the vehicle.
3. The method according to claim 2, wherein, The step of determining the real-time second positioning data of the vehicle based on the initial data and the inertial data includes: The initial data is corrected using real-time dynamic carrier phase differential technology, and the second positioning data is obtained based on the corrected initial data and the inertial data. Alternatively, based on the initial data and the inertial data, the real-time third positioning data of the vehicle is obtained, and the third positioning data is corrected using real-time dynamic carrier phase differential technology to obtain the second positioning data.
4. The method according to claim 2, wherein, The process of fusing the second positioning data and the corrected first positioning data to obtain the real-time target positioning data of the vehicle includes: The average of the second positioning data and the corrected first positioning data is determined as the target positioning data; or... The target positioning data is obtained by weighted summing of the second positioning data and the corrected first positioning data.
5. The method according to claim 1, wherein, The error condition includes at least one of the following: The signal-to-noise ratio of the Global Navigation Satellite System data is less than a first threshold. The position error at the current moment, determined based on the data from the Global Navigation Satellite System, reaches the second threshold. The velocity error at the current moment, determined based on the data from the Global Navigation Satellite System, reaches the third threshold. The number of satellites generating the Global Navigation Satellite System data is less than the fourth threshold.
6. The method according to claim 1, wherein, The method further includes: In the first positioning mode, if the error of the real-time acquired global navigation satellite system data no longer meets the error condition, the first positioning mode will be switched to the second positioning mode. The first positioning mode refers to the mode of acquiring the real-time target positioning data of the vehicle based on image frames. In the second positioning mode, real-time dynamic carrier phase differential technology is used to correct the real-time global navigation satellite system data to obtain the real-time target positioning data of the vehicle.
7. The method according to claim 1, wherein, The determination of the vehicle's real-time relative motion information based on image frames acquired at multiple time points includes: Extract feature points from each image frame, the feature points including at least one of edge and corner points in the image frame; Feature matching is performed on adjacent image frames based on feature points, and the real-time relative motion information of the vehicle is determined based on the matching results of multiple image frames.
8. A vehicle positioning device for complex environments, wherein, The device includes: The acquisition module is used to acquire real-time global navigation satellite system data of the vehicle through the positioning device on the vehicle during the vehicle's operation, and to continuously acquire image frames of the driving environment through the camera device on the vehicle. The determination module is used to determine initial data when the error of the global navigation satellite system data reaches the error condition. The initial data refers to the global navigation satellite system data collected at multiple time points whose error has not reached the error condition and whose collection time is the latest. The determining module is further configured to determine the real-time relative motion information of the vehicle based on image frames acquired at multiple time points, wherein the relative motion information includes at least one of the travel distance and rotation angle. The determining module is further configured to determine the vehicle's real-time first positioning data based on the initial data and the relative motion information; The correction module is also used to correct the first positioning data using real-time dynamic carrier phase differential technology to obtain the real-time target positioning data of the vehicle.
9. A vehicle controller, wherein, The vehicle controller includes a processor and a memory, wherein the memory stores at least one piece of program code, which is loaded and executed by the processor to implement the vehicle positioning method in a complex environment as described in any one of claims 1 to 7.
10. A computer-readable storage medium, wherein, The storage medium stores at least one piece of program code, which is loaded and executed by a processor to implement the vehicle positioning method in a complex environment as described in any one of claims 1 to 7.
11. A computer program product, wherein, The product stores at least one piece of program code, which is loaded and executed by a processor to implement the vehicle positioning method in a complex environment as described in any one of claims 1 to 7.