Vehicle positioning method and device, computer device, and storage medium
By utilizing electronic map correction methods based on odometer data and filter status in vehicle positioning, the problems of high hardware cost and large error in vehicle positioning are solved. This achieves high-accuracy positioning in the same coordinate system, reduces hardware cost, and improves positioning accuracy.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- TENCENT TECHNOLOGY (SHENZHEN) CO LTD
- Filing Date
- 2022-08-03
- Publication Date
- 2026-06-23
AI Technical Summary
Existing vehicle positioning methods require multiple sets of navigation hardware, resulting in high hardware costs and a high risk of introducing errors. Improving the accuracy of positioning information while reducing hardware costs has become an urgent problem to be solved.
By acquiring vehicle odometer data and filter status, and using electronic maps to correct predicted positioning information, the system ensures that positioning information and filter status are matched and corrected in the same coordinate system, avoiding coordinate transformation errors and achieving an adaptive positioning scheme with different scenarios and accuracies.
Without adding hardware, the accuracy of vehicle positioning information is improved, matching point information can be flexibly configured, hardware costs are reduced, and coordinate transformation errors in traditional methods are effectively avoided.
Smart Images

Figure CN115326084B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a vehicle positioning method, apparatus, computer equipment, storage medium, and computer program product. Background Technology
[0002] With the development of computer and internet technologies, intelligent driving has been applied in various business scenarios, making it widely known and appreciated. Due to the ever-changing nature of various road conditions, real-time location and navigation services are required when vehicles are in motion.
[0003] However, current vehicle positioning methods typically employ multi-sensor fusion positioning using multiple filters. The output parameters of these filters are weighted to ensure stable positioning information. In real-world scenarios, each filter requires input parameters such as velocity and angular velocity, and needs to be independently connected to its corresponding sensor. This can easily introduce different errors and places high demands on the vehicle's hardware, requiring multiple navigation hardware systems within the vehicle. Therefore, how to effectively improve the accuracy of vehicle positioning information while reducing hardware costs has become an urgent problem to be solved. Summary of the Invention
[0004] Therefore, it is necessary to provide a vehicle positioning method, device, computer equipment, computer-readable storage medium, and computer program product that can effectively improve the accuracy of vehicle positioning information while reducing the cost of hardware equipment, in order to address the above-mentioned technical problems.
[0005] In a first aspect, this application provides a vehicle positioning method. The method includes: acquiring odometer data of a target vehicle during its driving process; determining a predicted state of the target filter at a second time based on the odometer data and a filter state of the target filter at a first time; determining predicted positioning information of the target vehicle at the second time based on the predicted state; selecting a target road segment matching the predicted positioning information from candidate road segments in an electronic map, and determining matching point information corresponding to the predicted positioning information in the target road segment; correcting the predicted positioning information based on the matching point information to obtain the positioning information of the target vehicle at the second time; the positioning information and the filter state are defined in the same coordinate system.
[0006] Secondly, this application also provides a vehicle positioning device. The device includes: an acquisition module for acquiring odometer data of a target vehicle during its driving process; a determination module for determining a predicted state of the target filter at a second time based on the odometer data and the filter state of the target filter at a first time; determining predicted positioning information of the target vehicle at the second time based on the predicted state; selecting a target road segment matching the predicted positioning information from candidate road segments in an electronic map, and determining matching point information corresponding to the predicted positioning information in the target road segment; and a correction module for correcting the predicted positioning information based on the matching point information to obtain the positioning information of the target vehicle at the second time; the positioning information and the filter state are defined in the same coordinate system.
[0007] Thirdly, this application also provides a computer device. The computer device includes a memory and a processor. The memory stores a computer program, and the processor, when executing the computer program, performs the following steps: acquiring odometer data of a target vehicle during its driving process; determining the predicted state of the target filter at a second time based on the odometer data and the filter state of the target filter at a first time; determining the predicted positioning information of the target vehicle at the second time based on the predicted state; selecting a target road segment matching the predicted positioning information from candidate road segments in an electronic map, and determining matching point information corresponding to the predicted positioning information in the target road segment; correcting the predicted positioning information based on the matching point information to obtain the positioning information of the target vehicle at the second time; the positioning information and the filter state are defined in the same coordinate system.
[0008] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps: acquiring odometer data of a target vehicle during its driving process; determining a predicted state of the target filter at a second time based on the odometer data and the filter state of the target filter at a first time; determining predicted positioning information of the target vehicle at the second time based on the predicted state; selecting a target road segment matching the predicted positioning information from candidate road segments in an electronic map, and determining matching point information corresponding to the predicted positioning information in the target road segment; correcting the predicted positioning information based on the matching point information to obtain positioning information of the target vehicle at the second time; the positioning information and the filter state are defined in the same coordinate system.
[0009] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps: acquiring odometer data of a target vehicle during its driving process; determining a predicted state of the target filter at a second time based on the odometer data and the filter state of the target filter at a first time; determining predicted positioning information of the target vehicle at the second time based on the predicted state; selecting a target road segment matching the predicted positioning information from candidate road segments in an electronic map, and determining matching point information corresponding to the predicted positioning information in the target road segment; correcting the predicted positioning information based on the matching point information to obtain positioning information of the target vehicle at the second time; the positioning information and the filter state are defined in the same coordinate system.
[0010] The aforementioned vehicle positioning method, device, computer equipment, storage medium, and computer program product acquire odometer data of the target vehicle during its journey. Based on the odometer data and the filter state of the target filter at a first moment, they determine the predicted state of the target filter at a second moment. Based on the predicted state, they determine the predicted positioning information of the target vehicle at the second moment. They select a target road segment from candidate road segments on an electronic map that matches the predicted positioning information and determine matching point information corresponding to the predicted positioning information within the target road segment. They then correct the predicted positioning information based on the matching point information to obtain the positioning information of the target vehicle at the second moment. The positioning information and the filter state are defined in the same coordinate system. Since the predicted positioning information can be matched with different electronic maps to obtain different matching point information, no additional vehicle hardware is required. This allows for flexible configuration of matching point information, enabling adaptive vehicle positioning schemes for different situations and with varying degrees of accuracy. Furthermore, defining the positioning information and the filter state in the same coordinate system effectively avoids errors caused by coordinate transformations in traditional methods, thereby significantly improving the accuracy of vehicle positioning information. This achieves the technical effect of effectively improving the accuracy of vehicle positioning information while reducing hardware costs. Attached Figure Description
[0011] Figure 1 This is an application environment diagram of the vehicle positioning method in one embodiment;
[0012] Figure 2 This is a flowchart illustrating a vehicle positioning method in one embodiment;
[0013] Figure 3 This is a schematic diagram illustrating the correction processing of predicted positioning information in one embodiment;
[0014] Figure 4This is a flowchart illustrating the steps of correcting the predicted state based on the correction error to obtain the corrected predicted state in one embodiment.
[0015] Figure 5 This is a schematic diagram of lane-level positioning and navigation in one embodiment;
[0016] Figure 6 This is a schematic diagram of a method framework applied to road-level positioning in one embodiment;
[0017] Figure 7 This is a schematic diagram of a method framework applied to lane-level positioning in one embodiment;
[0018] Figure 8 This is a schematic diagram of the coordinate transformation between the odometer coordinate system and the ENU coordinate system in one embodiment;
[0019] Figure 9 This is a schematic diagram of lane-level lane change guidance in one embodiment;
[0020] Figure 10 This is a structural block diagram of a vehicle positioning device in one embodiment;
[0021] Figure 11 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation
[0022] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0023] The vehicle positioning method provided in this application embodiment can be applied to, for example, Figure 1In the application environment shown, terminal 102 communicates with server 104 via a network. A data storage system can store the data that server 104 needs to process. The data storage system can be integrated onto server 104 or located in the cloud or on another server. Terminal 102 can obtain odometer data of the target vehicle during its journey from a local database or from server 104. Based on the odometer data and the filter state of the target filter at the first moment, terminal 102 determines the predicted state of the target filter at the second moment. Based on the predicted state, terminal 102 determines the predicted location information of the target vehicle at the second moment. Terminal 102 selects a target road segment from the candidate road segments of the electronic map that matches the predicted location information and determines the matching point information corresponding to the predicted location information within the target road segment. Terminal 102 corrects the predicted location information based on the matching point information to obtain the location information of the target vehicle at the second moment. The location information and the filter state are defined in the same coordinate system.
[0024] The terminal 102 can be, but is not limited to, various desktop computers, laptops, smartphones, tablets, IoT devices, and portable wearable devices. IoT devices can include smart speakers, smart TVs, smart air conditioners, and smart in-vehicle systems. Portable wearable devices can include smartwatches, smart bracelets, and head-mounted devices. The server 104 can be implemented using a standalone server or a server cluster consisting of multiple servers.
[0025] It is understood that the server 104 provided in this application embodiment can also be a service node in a blockchain system. The service nodes in the blockchain system form a peer-to-peer (P2P) network. The P2P protocol is an application layer protocol that runs on top of the Transmission Control Protocol (TCP).
[0026] Intelligent Traffic Systems (ITS), also known as Intelligent Transportation Systems, effectively integrate advanced technologies (information technology, computer technology, data communication technology, sensor technology, electronic control technology, automatic control theory, operations research, artificial intelligence, etc.) into transportation, service control, and vehicle manufacturing. This strengthens the connection between vehicles, roads, and users, thereby forming a comprehensive transportation system that ensures safety, improves efficiency, enhances the environment, and conserves energy.
[0027] Intelligent Vehicle Infrastructure Cooperative Systems (IVICS) are a development direction of Intelligent Transportation Systems (ITS). IVICS utilizes advanced wireless communication and next-generation Internet technologies to implement comprehensive, real-time dynamic information exchange between vehicles and infrastructure. Based on the collection and fusion of dynamic traffic information across all times and spaces, it conducts active vehicle safety control and cooperative road management, fully realizing effective collaboration between people, vehicles, and roads. This ensures traffic safety, improves traffic efficiency, and ultimately forms a safe, efficient, and environmentally friendly road traffic system.
[0028] Computer vision (CV) is a science that studies how to enable machines to "see." More specifically, it refers to machine vision, which uses cameras and computers to replace human eyes in recognizing, recording, and measuring targets, and then performs image processing to create images more suitable for human observation or transmission to instruments. As a scientific discipline, computer vision studies related theories and technologies, attempting to build artificial intelligence systems capable of extracting information from images or multidimensional data. Computer vision technologies typically include image processing, image recognition, image semantic understanding, image retrieval, OCR, video processing, video semantic understanding, video content / behavior recognition, 3D object reconstruction, 3D technology, virtual reality, augmented reality, simultaneous localization and mapping (SLAM), autonomous driving, intelligent transportation, and common biometric recognition technologies such as facial recognition and fingerprint recognition.
[0029] With the research and advancement of artificial intelligence (AI) technology, AI is being studied and applied in various fields, such as smart homes, smart wearable devices, virtual assistants, smart speakers, smart marketing, autonomous driving, drones, robots, smart healthcare, smart customer service, vehicle networking, and intelligent transportation. It is believed that with the development of technology, AI will be applied in more fields and play an increasingly important role.
[0030] In one embodiment, such as Figure 2 As shown, a vehicle positioning method is provided, which can be applied to... Figure 1 Taking the terminal in the example, the explanation includes the following steps:
[0031] Step 202: Obtain the odometer data of the target vehicle during its driving process.
[0032] The target vehicle refers to a vehicle traveling on a road. For example, vehicle 1, vehicle 2, and vehicle 3 traveling on road A can all be considered target vehicles. Each vehicle is equipped with an onboard terminal, camera, and sensors. The onboard terminal can acquire real-time odometer data corresponding to the vehicle's travel on road A.
[0033] Odometers are devices that measure distance traveled, such as various types of sensors installed on vehicles for this purpose. Odometer data refers to data acquired from such devices, for example, odometer data acquired from an inertial measurement unit (IMU) during the vehicle's current movement. An IMU is a device that measures an object's three-axis attitude angles and acceleration. The odometer data in this application may include position data, heading data, and timestamp information. For example, the odometer data of a target vehicle at a certain moment can be denoted as O1 = (x, y, yaw), where x represents the target vehicle's X-axis coordinate value in the odometer coordinate system, y represents the target vehicle's Y-axis coordinate value in the odometer coordinate system, and yaw represents the target vehicle's heading angle in the odometer coordinate system.
[0034] Specifically, if the target vehicle is equipped with a terminal device, or if the target vehicle is associated with a terminal device, the terminal can obtain the odometer data of the target vehicle during its journey. This odometer data includes the target vehicle's location and heading data at different times. The terminal device installed in the target vehicle includes, but is not limited to, in-vehicle terminal devices, mobile terminal devices, and portable terminal devices.
[0035] For example, if target vehicle A is associated with terminal A, then terminal A can obtain the odometer data A of target vehicle A at the current moment while it is traveling on road A, denoted as O. A = (x, y, yaw), where x represents the X-axis coordinate of the target vehicle in the odometer coordinate system, y represents the Y-axis coordinate of the target vehicle in the odometer coordinate system, and yaw represents the heading angle of the target vehicle in the odometer coordinate system.
[0036] Step 204: Determine the predicted state of the target filter at the second time based on the odometer data and the filter state of the target filter at the first time.
[0037] The target filter refers to the filter selected from different types of candidate filters. For example, the target filter in this application includes, but is not limited to, a Kalman filter.
[0038] The first and second moments are used to distinguish different moments; for example, the first moment is the previous moment, and the second moment is the next moment.
[0039] The filter state refers to the state of the filter at a certain moment. The filter state includes the target vehicle's heading angle, longitude, latitude, and the transformation relationship or equivalent data between the odometer coordinate system and the NEU coordinate system. Both the odometer coordinate system and the NEU coordinate system are Cartesian coordinate systems. The NEU coordinate system (local Cartesian coordinate system, ENU), also called the station-centered coordinate system or site coordinate system, is mainly used to understand the motion patterns of other objects centered on the observer, such as the viewing angle, azimuth, and distance of GPS satellites visible to the receiver. The NEU coordinate system is a coordinate system with the station as its origin, meaning that a prepared base is used to determine the location for observation and measurement.
[0040] The predicted state refers to the state estimated by a filter based on the current state at the next moment through state recursion for the next moment. For example, the filter might estimate the state based on the state X at the first moment. k The state at the second time step is recursively calculated to estimate the state X at the second time step. k+1|k This is the predicted state.
[0041] Specifically, after acquiring the odometer data of the target vehicle during its journey, the terminal can determine the predicted state of the target filter at the second time step based on the odometer data and the filter state of the target filter at the first time step. The first time step can be the initial time, i.e., when the terminal's navigation system first performs vehicle positioning. If the navigation system has not been initialized, the terminal needs to initialize the filter. For example, the initialization process includes determining the transformation relationship T between the odometer coordinate system and the ENU coordinate system, determining the error value of the odometer data, determining the initial value of the filter state, and determining the initial covariance matrix.
[0042] For example, let's take a Kalman filter as the target filter. Assume that when terminal A performs vehicle localization for the first time, if the navigation system is not initialized, the terminal first initializes the Kalman filter to determine the initial filter state X0 = (C0, lon0, lat0, T), which includes the vehicle's heading angle, longitude, latitude, and the transformation relationship T between the odometer coordinate system and the ENU coordinate system. Further, after acquiring the odometer data of target vehicle A during its journey, the terminal can determine the predicted state X of the Kalman filter for the next time step based on the odometer data and the filter state of the Kalman filter at the first moment, i.e., the initial filter state X0 = (C0, lon0, lat0, T). 0+1|0 = (C1,lon1,lat1,T).
[0043] Step 206: Determine the predicted location information of the target vehicle at the second moment based on the predicted state.
[0044] Specifically, after determining the predicted state of the target filter at the second time based on the odometer data and the filter state of the target filter at the first time, the terminal can determine the predicted positioning information of the target vehicle at the second time based on the predicted state. Since the predicted state output by the filter includes the heading angle, longitude, latitude of the target vehicle, and the transformation relationship between the odometer coordinate system and the ENU coordinate system, the terminal can use the heading angle, longitude, and latitude in the predicted state as the predicted positioning information of the target vehicle at the second time.
[0045] For example, suppose the terminal determines the predicted state of the target filter at the next moment as X based on the odometer data of the target vehicle A during its driving process and the initial filter state of the target filter. 0+1|0 = (C1, lon1, lat1, T), then the terminal can predict the state X. 0+1|0 The heading angle C1, longitude value lon1, and latitude value lat1 in (C1,lon1,lat1,T) are used as the predicted positioning information of the target vehicle A at the next moment.
[0046] Step 208: Select the target road segment that matches the predicted positioning information from the candidate road segments in the electronic map, and determine the matching point information corresponding to the predicted positioning information in the target road segment.
[0047] Electronic maps, also known as digital maps, are maps stored and viewed digitally using computer technology. Electronic maps can include maps of varying resolutions; for example, the electronic maps in this application include, but are not limited to, HD maps and SD maps.
[0048] HD (High Definition) maps refer to map data that provides lane-level information, primarily for autonomous and assisted driving, with accuracy down to the centimeter level. HD map data can provide information such as road shape, location of road signs, lane direction and position, and traffic light location.
[0049] SD Map (Street Directory Map) is a road-level navigation map, mainly used in navigation, route planning and other scenarios. It mainly provides information such as road shape, length and slope.
[0050] Candidate road segments refer to multiple road segments in an electronic map. For example, two adjacent road segments L12 and L23 in an SD map can be selected as candidate road segments.
[0051] The target road segment refers to a road segment selected from the candidate road segments. For example, from candidate road segments L12 and L23 in the SD map, road segment L12 is selected as the target road segment.
[0052] Matching point information refers to the location point information obtained by matching the predicted location information with the information in the electronic map.
[0053] Specifically, after the terminal determines the predicted location information of the target vehicle at the second moment based on the predicted state, it can select a target road segment from the candidate road segments on the electronic map that matches the predicted location information, and determine the matching point information corresponding to the predicted location information within the target road segment. The target filter will output the predicted location information for the next moment, for example, the output predicted location information is P, where P includes latitude, longitude, and heading information. The terminal uses this location information P to select a Link in the SD map for matching; that is, the terminal binds the location information P to a drivable road according to a preset matching algorithm and returns a matching location point P. L Matching location point P L This includes latitude, longitude, and heading information. A link in an SD map typically refers to a one-way road, displayed as a line segment. Each point on a link corresponds to a latitude and longitude coordinate, representing its location information. Links also carry other auxiliary information, such as road type, road width, and heading information.
[0054] For example, after the terminal determines the predicted location information P of target vehicle A at the second time point based on the predicted state, the terminal can select a target link that matches the predicted location information P from multiple links in the SD map according to a preset matching algorithm, and determine the matching point information P corresponding to the predicted location information P in the target link. L That is, when the terminal matches the predicted location information P with the SD map, the terminal can project the location point P onto the target link, and the resulting projected point is the matching point P. L It is understandable that the terminal selects which link to project based on the algorithm set by the SD map matching module.
[0055] Step 210: Correct the predicted positioning information based on the matching point information to obtain the positioning information of the target vehicle at the second time moment; the positioning information and the filter state are defined in the same coordinate system.
[0056] The location information refers to the corrected location information of the target vehicle at the second moment. For example, the predicted location information of target vehicle A at the second moment is X. k+1|k = (C, lon, lat), the corrected positioning information of the target vehicle A at the second time point is X.k+1 = (C,lon1,lat), where C represents the heading angle of target vehicle A; lon represents the longitude information of target vehicle A; and lat represents the latitude information of target vehicle A.
[0057] The positioning information and the filter state are defined in the same coordinate system. This means that the coordinate system defined by the positioning information and the coordinate system defined by the filter state are the same coordinate system. For example, the positioning information is defined in the WGS84 coordinate system, and the filter state is also defined in the WGS84 coordinate system. That is, the recursive process and the correction process of the filter are both carried out in the WGS84 coordinate system, thereby effectively avoiding the errors introduced during coordinate transformation.
[0058] Specifically, the terminal selects a target road segment from the candidate road segments of the electronic map that matches the predicted positioning information. After determining the matching point information corresponding to the predicted positioning information in the target road segment, the terminal can correct the predicted positioning information based on the matching point information to obtain the corrected positioning information of the target vehicle at the second time. That is, after receiving the feedback matching point information, the terminal can use the matching point information to correct the filter state, so that the filter outputs more accurate positioning information at the second time. In this application, the positioning information and the filter state are defined in the same coordinate system, thereby effectively avoiding errors during coordinate transformation.
[0059] For example, let's take a Kalman filter as the target filter. The terminal selects a target road segment from the candidate road segments of the electronic map that matches the predicted positioning information. After determining the matching point information corresponding to the predicted positioning information in the target road segment, the terminal can use the matching point information as observation information to correct the predicted state of the filter at the second time moment, so as to obtain the corrected positioning information of the target vehicle at the second time moment.
[0060] In addition to using the matching point information as observation information to correct the filter's prediction state at the second time step, the terminal can also independently use other information as observation information to correct the filter's prediction state at the second time step. For example, the terminal can acquire navigation and positioning data, i.e., GNSS data, and use GNSS data as observation information to correct the filter's prediction state at the second time step. Furthermore, if the terminal determines that the currently fed-back matching point information is reliable, it can directly use this matching point information as observation information to perform Kalman correction on the filter's prediction state at the second time step. If the terminal determines that the currently fed-back matching point information is unreliable, but the distance between the target vehicle and the left and right lane lines is reliable, the terminal can use the distance between the target vehicle and the left and right lane lines, as well as the lane widths corresponding to the left and right lane lines, to calculate new observation information. The terminal then uses this new observation information to perform Kalman correction on the filter's prediction state at the second time step.
[0061] In this embodiment, by acquiring the odometer data of the target vehicle during its driving process, and based on the odometer data and the filter state of the target filter at the first moment, the predicted state of the target filter at the second moment is determined; the predicted positioning information of the target vehicle at the second moment is determined based on the predicted state; a target road segment matching the predicted positioning information is selected from the candidate road segments of the electronic map, and matching point information corresponding to the predicted positioning information is determined in the target road segment; the predicted positioning information is corrected based on the matching point information to obtain the positioning information of the target vehicle at the second moment; the positioning information and the filter state are defined in the same coordinate system. Since the predicted positioning information can be matched with different electronic maps to obtain different matching point information, no additional vehicle hardware is required to flexibly configure the matching point information, thereby achieving an adaptive vehicle positioning scheme for different occasions and different accuracies. At the same time, defining the positioning information and the filter state in the same coordinate system can effectively avoid the errors caused by coordinate transformation in traditional methods, thus effectively improving the accuracy of vehicle positioning information. This achieves the technical effect of effectively improving the accuracy of vehicle positioning information while reducing hardware costs.
[0062] In one embodiment, before acquiring the odometer data of the target vehicle during its driving process, the method further includes:
[0063] Acquire historical odometer data and navigation positioning data of the target vehicle during its driving process;
[0064] The filter is initialized based on historical odometer data and navigation positioning data;
[0065] During initialization, the target location is selected from the navigation and positioning data as the starting positioning point;
[0066] The initial filter state is determined based on the heading and position information of the starting positioning point.
[0067] Historical odometer data refers to historical data obtained from the device that measures the distance traveled. For example, if the current time is 9:00, the terminal can obtain the historical odometer data corresponding to the time 8:55. Historical odometer data includes position data, heading data, and timestamp.
[0068] Navigation and positioning data refers to global navigation and positioning data. The Global Navigation Satellite System (GNSS), also known as the Global Navigation Satellite System, is a space-based radio navigation and positioning system that provides users with all-weather 3D coordinates, velocity, and time information at any location on the Earth's surface or in near-Earth space. For example, navigation and positioning data can be obtained from GPS devices and includes timestamps, valid longitude information, latitude information, and heading angle information. It is understood that the navigation and positioning data and odometer data in this application do not need to be on the same frequency. For example, the odometer data may be 10Hz, while the navigation and positioning data may be 1Hz. That is, this application does not specifically limit the specific frequencies of the acquired odometer data and navigation and positioning data.
[0069] Specifically, before acquiring the odometer data of the target vehicle during its journey, the terminal can acquire the historical odometer data and navigation positioning data of the target vehicle during its journey. Based on the historical odometer data and navigation positioning data, the terminal initializes the filter. That is, when the terminal first performs vehicle positioning, it first needs to initialize the navigation system. During the initialization of the navigation system, the terminal also initializes the filter. That is, during the initialization process, the terminal can select the target location from the navigation positioning data as the starting positioning point, and determine the initial filter state based on the heading information and latitude and longitude information of the starting positioning point.
[0070] For example, let's take a Kalman filter as the target filter. Before acquiring the odometer data of target vehicle A during its journey, the terminal can acquire historical odometer data and GNSS data of target vehicle A during its journey. For ease of description, the terminal can denote the odometer data as O = (x, y, yaw), where x represents the X-axis coordinate of the target vehicle in the odometer coordinate system, y represents the Y-axis coordinate of the target vehicle in the odometer coordinate system, and yaw represents the heading angle of the target vehicle in the odometer coordinate system. Simultaneously, the terminal can denote the GNSS data as G = (lon... G ,lat G C G ), where lon G Indicates the longitude value of GNSS, lat G C represents the latitude value of GNSS. G This indicates the GNSS heading value.
[0071] Furthermore, the terminal can initialize the Kalman filter based on historical odometry data and GNSS data. During initialization, the terminal can determine a high-quality GNSS point from the GNSS data as the starting point S, and use the heading and position information of the starting point S as the initial values in the initial state X1 of the Kalman filter; simultaneously, the terminal can select a reference odometry point Or = (x... r ,y r ,yaw r ), and based on the reference odometer point Or = (x r ,y r ,yaw r By determining the odometer coordinate system and the starting point S, and establishing the transformation relationship T between the odometer coordinate system and the ENU coordinate system, the initial state of the filter, X1 = (C, lon, lat, T), can be obtained. This initial state includes the heading angle, longitude, and latitude of the target vehicle A, as well as the transformation relationship T between the odometer coordinate system and the ENU coordinate system. Furthermore, the initialization process also includes steps for the terminal to determine the error value of the odometer data and to determine the initial covariance matrix of the Kalman filter state.
[0072] It is understood that the specific initialization method is not limited in the embodiments of this application. At the same time, the method for determining GNSS quality in the embodiments of this application includes, but is not limited to, using the smoothness of the GPS trajectory and the signal-to-noise ratio information in GSV to examine whether the trajectory shapes of the two match, thereby determining a GNSS point with better quality, or using other independent information, such as odometer data.
[0073] In this embodiment, a high-quality GNSS point is determined from the GNSS data as the starting point, and the heading and position information of the starting point are used as the initial values in the initial state of the filter. At the same time, the transformation relationship T between the odometer coordinate system and the ENU coordinate system is also used as an initial value in the initial state of the filter, providing more accurate initial data for subsequent state recursion and correction, so that the filter outputs more accurate positioning information.
[0074] In one embodiment, the odometer data includes odometer data at different times; the step of determining the predicted state of the target filter at a second time based on the odometer data and the filter state of the target filter at a first time time includes:
[0075] Based on odometer data at different times, determine the odometer increment;
[0076] Based on the odometer increment and the filter state of the target filter at the first moment, the predicted state of the target filter at the second moment is determined.
[0077] Odometer increment refers to the change in odometer readings, specifically the difference between mileage values at different times. For example, a terminal can perform a difference calculation between the odometer data at 9:00 and the odometer data at 8:55; the resulting difference is the odometer increment for the period from 8:55 to 9:00.
[0078] Specifically, after the terminal acquires the odometer data of the target vehicle during its driving process, the terminal can determine the odometer increment based on the odometer data at different times, and determine the predicted state of the target filter at the second time based on the odometer increment and the filter state of the target filter at the first time. That is, the terminal can perform state calculation based on the sensor information and dynamic formula input at the previous time to calculate the state of the filter at the next time.
[0079] For example, let's take a Kalman filter as the target filter. When the terminal performs vehicle localization for the first time, it needs to initialize the Kalman filter. After initialization, once the terminal obtains new odometer data from the sensors, it can recursively perform Kalman filter iterations based on this new odometer data.
[0080] In one embodiment, the Kalman state recursion can be performed using the function shown in formula (1):
[0081]
[0082] Among them, X k and X k+1|k Let f(X) represent the localization state at time k and the predicted state at time k+1, respectively. k ΔO) represents the state transition from time k to k+1. k Let P represent the covariance matrix at time k. k+1|k Φ represents the predicted covariance matrix. k Let Q represent the state transition matrix at time k. k Let R represent the linear quantity related to the odometer, ΔO represent the odometer measurement noise, and ΔO represent the odometer increment. The function f represents the function that transforms odometer data into positioning data. It should be understood that there are no restrictions on the specific implementation of function f in the embodiments of this application.
[0083] In this embodiment, the Kalman filtering method is used as the positioning framework to achieve the fusion of multiple signals and data, combining the advantages of multiple signals and avoiding the loss of a single signal. Within the method framework provided in this application, the observed signals can be flexibly configured to achieve positioning schemes that adapt to different situations and different levels of accuracy.
[0084] In one embodiment, the step of determining the predicted state of the target filter at a second time step based on the odometer increment and the filter state of the target filter at a first time step includes:
[0085] The odometer increment is transformed according to the coordinate transformation relationship to obtain the odometer increment in the target coordinate system; the coordinate transformation relationship is the transformation relationship between the odometer coordinate system and the target coordinate system.
[0086] Based on the odometer increment in the target coordinate system and the filter state of the target filter at the first moment, the predicted state of the target filter at the second moment is determined.
[0087] The target coordinate system refers to a coordinate system selected from multiple coordinate systems, for example, the target coordinate system is the ENU coordinate system.
[0088] Specifically, after determining the odometer increment, the terminal can perform a coordinate transformation on the odometer increment according to the coordinate transformation relationship to obtain the odometer increment in the target coordinate system. Then, based on the odometer increment in the target coordinate system and the filter state of the target filter at the first time moment, the terminal determines the prediction state of the target filter at the second time moment. The coordinate transformation relationship is the transformation relationship between the odometer coordinate system and the target coordinate system. For example, when the target coordinate system is the ENU coordinate system, the coordinate transformation relationship is the transformation relationship T between the odometer coordinate system and the ENU coordinate system.
[0089] For example, let's take a Kalman filter as the target filter and the ENU coordinate system as the target coordinate system. After the terminal determines the odometer increment (Δx, Δy), it can perform a coordinate transformation on the odometer increment (Δx, Δy) according to the coordinate transformation relationship T to obtain the odometer increment (Δx′, Δy′) in the ENU coordinate system. Then, based on the odometer increment (Δx′, Δy′) in the ENU coordinate system and the filter state X of the Kalman filter at the first moment... k Determine the predicted state X of the target filter at the second time step. k+1|k .
[0090] The method for transforming the odometer increment from the odometer coordinate system to the ENU coordinate system is shown in the following formula (2):
[0091] (Δx′,Δy′) T =T·(Δx, Δy) T (2)
[0092] Where (Δx, Δy) represents the odometer increment in the odometer coordinate system, (Δx′, Δy′) represents the odometer increment in the ENU coordinate system, and T represents the transformation relationship between the odometer coordinate system and the ENU coordinate system.
[0093] Since the latitude and longitude information obtained by the terminal from the GPS device is defined in the geodetic coordinate system, the most commonly used geodetic coordinate system is the WGS coordinate system. The WGS coordinate system is not the Cartesian coordinate system. In the traditional way of GPS-IMU inertial navigation fusion, the coordinate system selected is the ENU coordinate system. The filter state is defined in the ENU coordinate system. The transformation of the obtained positioning information from the WGS coordinate system to the ENU coordinate system is a non-linear transformation. Essentially, it is to select a point on the sphere and perform tangent plane expansion.
[0094] For example, the general form of the transformation between the WGS coordinate system and the ENU coordinate system is shown below:
[0095] Starting from an origin with latitude and longitude S1, the vehicle reaches point A after 2 seconds. Integrating from the IMU, the vehicle's coordinate change in the ENU coordinate system is ΔX. This is a raw estimate and may contain errors, requiring correction. During this time, the latitude and longitude change is ΔS. ΔS is transformed from the WGS coordinate system to the ENU coordinate system, taking the form ΔX' = f(S1, ΔS). It can be seen that ΔX' = f(S1, ΔS) requires the participation of the previous state S1. Since S1 is not a state variable of the filter because it is not in the ENU coordinate system, S1 generally has errors, leading to an error between the calculated ΔX' and the actual ideal value. After fusion correction of ΔX with ΔX', the change in the WGS coordinate system is calculated in reverse using f. However, this reverse calculation of coordinate transformation may also introduce errors.
[0096] In this embodiment, compared to the traditional method of defining the filter state in the ENU coordinate system, which is a non-linear transformation from the WGS coordinate system to the ENU coordinate system and therefore introduces errors, the filter state in this embodiment is directly defined in the geodetic coordinate system, and the collected positioning information is also defined in the geodetic coordinate system. Therefore, the state can be directly introduced into the calculation, meaning that only a part of the state estimation is involved in the calculation. During the transformation process, no non-state variables are involved, thus effectively avoiding the errors caused by the involvement of non-state variables, making the final output positioning information more accurate.
[0097] In one embodiment, assuming that the Z-axis of the odometer coordinate system coincides with the UP-axis of the ENU coordinate system, the transformation relationship T between the odometer coordinate system and the ENU coordinate system is a second-order rotation matrix, which is related to an angle, denoted as θ, where θ represents the angle between the E-axis of the ENU coordinate system and the X-axis of the odometer coordinate system. At this time, the state of the Kalman filter is denoted as X = (C, lon, lat, θ), and satisfies the following formula (3):
[0098]
[0099] Combining the aforementioned formula (1) with the state recursion formula of the Kalman filter, X k+1 =f(X) k ,ΔO), a feasible implementation of the function f is shown in the following formula (4):
[0100]
[0101] Where RE and F are Earth-related constants. The function `regulate` outputs the angle according to the North Zero heading angle, with an output range of 0 to 360°; North Zero indicates the reference zero point of the heading angle, with due north as 0° and due east as 90°; similarly, East Zero has due east as 0°.
[0102] From formula (4), we can see that the state transition is a nonlinear relationship. Therefore, the Kalman filter becomes an extended Kalman filter, and the corresponding state transition matrix and noise figure matrix are shown in formula (5) below:
[0103]
[0104] In one embodiment, the step of selecting a target road segment that matches the predicted positioning information from candidate road segments on an electronic map, and determining the matching point information corresponding to the predicted positioning information within the target road segment, includes:
[0105] When the electronic map is a first-precision map, the target road segment that matches the predicted positioning information is selected from the candidate road segments of the first-precision map.
[0106] Determine the projection point information of the predicted positioning information on the target road segment;
[0107] The projection point information is used as the matching point information corresponding to the predicted positioning information.
[0108] The first precision map in this application can be an SD map.
[0109] Specifically, when the first-precision map is an SD map, the terminal can use the SD map matching module to select a target road segment from the candidate road segments of the first-precision map that matches the predicted positioning information, and determine the projection point information of the predicted positioning information in the target road segment. This projection point information is then used as the matching point information corresponding to the predicted positioning information. It can be understood that when the predicted positioning information is matched with the SD map using the SD map matching module, a preset algorithm is running within the SD map matching module. For example, it may use a Bayesian filtering method for matching. The SD map matching module itself also maintains some states and uses the predicted positioning information output by the target filter as observation information to correct its own maintained states.
[0110] For example, when the first-precision map is an SD map, the terminal can use the SD map matching module to select a target link that matches the predicted positioning information P from multiple candidate links in the SD map, and determine the matching point information P corresponding to the predicted positioning information P in the target link. L In other words, the SD map matching module can project the location point P onto the target link, similar to projecting a point outside a line onto the line. The resulting projected point is the matching point P. L It is understandable that the terminal selects which link to project as the target link based on the algorithm set by the SD map matching module.
[0111] In this embodiment, the Kalman filter method is used as the positioning framework to achieve the fusion of multiple signals and data, combining the advantages of various signals, avoiding the loss of a single signal, and flexibly configuring the observed signals to achieve adaptive positioning schemes for different occasions and with different levels of accuracy. For example, when an SD map is available, road-level positioning and navigation can be adaptively achieved.
[0112] In one embodiment, the step of selecting a target road segment that matches the predicted positioning information from candidate road segments on an electronic map, and determining the matching point information corresponding to the predicted positioning information within the target road segment, includes:
[0113] When the electronic map is a second-precision map, visual information carrying lane information is acquired;
[0114] Visual information is fused with predicted positioning information to obtain fused positioning information;
[0115] From the candidate lanes in the second-precision map, select the target lane that matches the fused positioning information;
[0116] In the target lane, determine the matching point information corresponding to the fused positioning information.
[0117] The second precision map in this application can be an HD map.
[0118] Visual information refers to image information containing lane information captured by a camera. For example, if a target vehicle is equipped with a camera, the vehicle's onboard terminal can access the camera to collect data on the vehicle's movement, obtaining visual information including lane information. This visual information could be real-time captured driving images or video data. In this embodiment, the visual information may include the number of lanes, lane width, lane equation, and the perpendicular distance between the vehicle and the lane lines on both sides of the lane.
[0119] Specifically, when the second-precision map is an HD map, the terminal can acquire visual information carrying lane information and use a Bayesian filtering algorithm to fuse the visual information carrying lane information and the predicted positioning information output by the filter to obtain the fused positioning information. Then, the terminal selects a lane as the target lane in the HD map and matches the fused positioning information with the target lane to obtain the matching point. The information of the matching point includes latitude and longitude information and heading information.
[0120] For example, the visual HD map matching module in the terminal can process the lane line information perceived by the visual perception module and match it with the HD map to obtain high-precision positioning information. This positioning information is then fed back to a filter for correction. Specifically, the visual HD map matching module in the terminal can utilize a Bayesian framework to maintain a state vector that stores the probability of the vehicle being in each lane. During vehicle movement, the state itself undergoes state transitions, yielding prior information about the state. The terminal can also use visual information as observation information and perform Bayesian posterior estimation to obtain high-precision positioning information based on the Bayesian posterior estimate. It should be understood that the above is only one possible implementation method in this application.
[0121] In this embodiment, the Kalman filter method is used as the positioning framework to achieve the fusion of multiple signals and data, combining the advantages of various signals, avoiding the loss of a single signal, and flexibly configuring the observation signals to achieve adaptive positioning schemes for different occasions and with different levels of accuracy. For example, when visual perception and HD maps are available, lane-level positioning and navigation can be adaptively achieved.
[0122] In one embodiment, after determining the matching point information corresponding to the fused positioning information in the target lane, the method further includes:
[0123] When the confidence level of the matching point information is determined to be greater than the confidence threshold, the step of correcting the predicted positioning information based on the matching point information is executed.
[0124] When the credibility of the matching point information is less than or equal to the credibility threshold, a first distance value between the target vehicle and the first lane line is determined, and a second distance value between the target vehicle and the second lane line is determined.
[0125] When the first distance value and the second distance value meet the credible distance condition, the target observation information is determined based on the first distance value, the second distance value, and the lane width; the lane width is the distance between the first lane line and the second lane line.
[0126] The predicted positioning information is corrected based on the target observation information to obtain the positioning information of the target vehicle at the second moment.
[0127] Among them, target observation information refers to one piece of information selected from multiple observation information as the observation information. For example, the observation information may include visual information, SD map matching information, and GNSS positioning information.
[0128] Specifically, after the terminal determines the matching point information corresponding to the fused positioning information in the target lane, the terminal can determine whether the credibility of the matching point information is greater than a credibility threshold. If it is greater than the credibility threshold, the matching point information is considered credible; if it is not greater than the credibility threshold, the matching point information is considered unreliable. When the terminal determines that the credibility of the matching point information is greater than the credibility threshold, the terminal can directly execute the step of correcting the predicted positioning information based on the matching point information. When the terminal determines that the credibility of the matching point information is less than or equal to the credibility threshold, the terminal can determine the first distance value between the target vehicle and the first lane line, and the second distance value between the target vehicle and the second lane line. Further, the terminal can determine whether the first distance value and the second distance value satisfy the credibility distance condition. If they satisfy the credibility distance condition, the first distance value and the second distance value are considered credible; if they do not satisfy the condition, the first distance value and the second distance value are considered unreliable.
[0129] When the terminal determines that the first distance value and the second distance value meet the credible distance condition, the terminal can redetermine a new target observation information based on the first distance value, the second distance value and the lane width, so that the prediction state of the filter can be corrected based on the new target observation information.
[0130] For example, such as Figure 3 The diagram shown illustrates the correction process for the predicted positioning information. Figure 3 The target lane is lane 1. The left lane line of lane 1 is denoted as L1, and the right lane line of lane 1 is denoted as L2. The distance between the left lane line L1 and the right lane line L2 is D, which is the lane width. After the terminal determines that the matching point G1 in the target lane 1 corresponds to the predicted positioning information P, if the terminal determines that the confidence level of the matching point G1 is greater than the confidence level threshold, the terminal can directly execute the step of correcting the predicted positioning information P based on the matching point G1; if the terminal determines that the confidence level of the matching point G1 is less than or equal to the confidence level threshold, the terminal determines that the first distance between the target vehicle A and the first lane line, i.e., the left lane line L1, is D1, and the second distance between the target vehicle A and the second lane line, i.e., the right lane line L2, is D2.
[0131] Furthermore, the terminal can determine whether the first distance value D1 and the second distance value D2 satisfy the reliable distance condition. When the first distance value D1 and the second distance value D2 satisfy the reliable distance condition, the terminal can redetermine the target positioning point S based on the first distance value D1, the second distance value D2, and the lane width D. After determining the target positioning point S, the terminal can select the target lane 1 that matches the target positioning point S from the candidate lanes in the HD map, and determine the matching point information corresponding to the target positioning point S in the target lane 1 as S. L The terminal can set the matching point information as S L As new target observation information, the predicted positioning information is corrected based on this new target observation information to obtain more accurate positioning information for the target vehicle at the second time step. This allows for the dynamic selection of the observation information with the highest confidence level as independent observation information to correct the filter state. In other words, multiple independent observation information is used to correct the state, resulting in a more accurate estimated state. Furthermore, the participation of multiple observations ensures that the state estimation does not rely solely on any one observation, effectively avoiding the influence of erroneous observations on the state.
[0132] In one embodiment, the step of selecting a target road segment that matches the predicted positioning information from candidate road segments on an electronic map, and determining the matching point information corresponding to the predicted positioning information within the target road segment, includes:
[0133] When the electronic map is a second-precision map, the target lane that matches the predicted positioning information is selected from the candidate lanes of the second electronic map.
[0134] Identify matching points in the target lane that correspond to the predicted positioning information.
[0135] Specifically, when the second-precision map is an HD map, the terminal can select a lane as the target lane in the HD map and match the predicted positioning information with the target lane to obtain a matching point. The information of this matching point includes latitude, longitude, and heading information. For example, the HD map matching module in the terminal can calculate the lane where the target vehicle may be located based on the predicted positioning information output by the filter and the HD map, and perform a posteriori estimation of the filter state to obtain more accurate positioning information of the target vehicle. It should be understood that the above is only one possible implementation method in this application. This enables the fusion of multiple signals and data, integrates the advantages of multiple signals, avoids the loss of a single signal, and allows for flexible configuration of observation signals to achieve adaptive positioning schemes for different occasions and different levels of precision. For example, when an HD map is available, lane-level positioning and navigation can be adaptively implemented.
[0136] In one embodiment, the step of correcting the predicted positioning information based on the matching point information to obtain the positioning information of the target vehicle at the second time moment includes:
[0137] Determine the observation matrix and observation noise;
[0138] Based on the matching point information, the prediction covariance matrix of the target filter at the first moment, the observation matrix, and the observation noise, the correction error of the filter state is determined.
[0139] The predicted state is corrected based on the correction error to obtain the corrected predicted state;
[0140] Based on the corrected predicted state, the location information of the target vehicle at the second moment is determined.
[0141] The specific values of the observation matrix and observation noise can be customized. For example, when performing observation correction on a Kalman filter based on GNSS, the observation noise can be adjusted according to the quality of the GNSS, i.e., low-quality GNSS corresponds to higher observation noise, and high-quality GNSS corresponds to lower observation noise.
[0142] Specifically, the terminal selects a target road segment from the candidate road segments of the electronic map that matches the predicted positioning information. After determining the matching point information corresponding to the predicted positioning information in the target road segment, the terminal can determine whether the matching point information is reliable. When the terminal determines that the matching point information is reliable, the terminal can determine the observation matrix and observation noise, and determine the correction error of the filter state based on the matching point information, the prediction covariance matrix of the target filter at the first time, the observation matrix, and the observation noise. Furthermore, the terminal can correct the predicted state based on the correction error to obtain the corrected predicted state, and determine the positioning information of the target vehicle at the second time based on the corrected predicted state.
[0143] The equation for Kalman observation correction is shown in formula (6) below:
[0144] Z = H * △X + w (6)
[0145] Where Z represents GNSS observations, H represents the observation matrix, w represents observation noise, and ΔX represents state correction error.
[0146] In this embodiment, state correction requires independent observation information, such as an independent GPS receiver, provided SD map matching, and visual information. This information, after processing, can all be used as independent observation information to correct the waveform state. Since GPS data acquisition, SD map matching, and visual information acquisition are independent of each other, the corresponding corrections can also be independent. That is, this embodiment utilizes multiple independent observation information to correct the state, making the estimated state more accurate. Furthermore, the participation of multiple observations ensures that state estimation does not rely solely on any single observation, effectively avoiding the influence of erroneous observations on the state and making the estimated state more accurate.
[0147] In one embodiment, when performing GNSS observation correction, the terminal can calculate the state correction error ΔX according to the formula (7) shown below, correct the state of the filter, and correct the covariance. Simultaneously, the rotational transformation relationship T between the odometer coordinate system and the northeast-northeast coordinate system is corrected, specifically according to the formula (7) shown below:
[0148]
[0149] Among them, X k+1|k X represents the predicted state at time k+1. k+1 T represents the predicted state after correction at time k+1, where ΔX is the state correction error; k+1 T represents the rotational transformation relationship between the odometer coordinate system and the northeast-to-northeast coordinate system at time k+1. k T(Δθ) represents the rotational transformation relationship between the odometer coordinate system and the northeast-sky coordinate system at time k, and T(Δθ) represents the increment of the rotational transformation relationship related to Δθ.
[0150] Compared to traditional methods that rely solely on GPS for state estimation without correcting for latent variables, this embodiment utilizes various observation information and employs similar methods to correct the filter state, including latitude and longitude, heading, and latent variables such as the transformation relationship between coordinate systems. The involvement of multiple observations ensures that state estimation does not depend solely on a single observation, effectively avoiding the influence of erroneous observations on the state and resulting in a more accurate estimated state.
[0151] In one embodiment, the method further includes:
[0152] Obtain the initial covariance matrix and the initial state transition matrix;
[0153] Based on the initial covariance matrix, the initial state transition matrix, the linearity of the odometer, and the measurement noise of the odometer, the prediction covariance matrix of the target filter at the first time step is determined.
[0154] Specifically, the terminal initializes the filter. After initialization, when the terminal acquires new odometer data, it can perform Kalman filter recursion based on the filter state at the initial moment to calculate the predicted state at the next moment. During Kalman filter recursion, the terminal can also acquire the initial covariance matrix and the initial state transition matrix, and determine the predicted covariance matrix of the target filter at the first moment based on the initial covariance matrix, the initial state transition matrix, the linearity of the odometer, and the measurement noise of the odometer. The Kalman state recursion can be performed using the function shown in the aforementioned formula (1). Thus, by using the Kalman filtering method as the positioning framework, the fusion of multiple signals and data is achieved, integrating the advantages of multiple signals and avoiding the loss of a single signal. In the method framework provided in this application, the observation signals can be flexibly configured to realize adaptive positioning schemes for different occasions and different accuracies.
[0155] In one embodiment, such as Figure 4 As shown, the steps for correcting the predicted state based on the correction error to obtain the corrected predicted state include:
[0156] Step 402: When the lateral distance between the matching point information and the predicted positioning information is less than or equal to a preset threshold, the predicted state is longitudinally corrected according to the correction error to obtain the corrected predicted state.
[0157] Step 404: When the lateral distance between the matching point information and the predicted positioning information is greater than the preset threshold, the predicted state is corrected longitudinally and laterally according to the correction error to obtain the corrected predicted state.
[0158] Among them, longitudinal correction refers to correction in the direction of travel, lateral correction refers to correction in the lateral direction, lateral refers to the direction perpendicular to the direction of travel, and longitudinal refers to the direction parallel to the direction of travel.
[0159] Specifically, the terminal selects a target road segment from the candidate road segments on the electronic map that matches the predicted positioning information. After determining the matching point information corresponding to the predicted positioning information in the target road segment, the terminal can determine whether the matching point information is reliable. When the terminal determines that the matching point information is reliable, the terminal can further determine whether the lateral distance between the matching point information and the predicted positioning information is less than a preset threshold. When the terminal determines that the lateral distance between the matching point information and the predicted positioning information is less than or equal to the preset threshold, the terminal can perform longitudinal correction on the predicted state according to the correction error to obtain the corrected predicted state. When the terminal determines that the lateral distance between the matching point information and the predicted positioning information is greater than the preset threshold, the terminal can perform longitudinal and lateral correction on the predicted state according to the correction error to obtain the corrected predicted state.
[0160] For example, such as Figure 3 The diagram shown illustrates the correction process for the predicted positioning information. Figure 3 The target lane is lane 1. The left lane line of lane 1 is denoted as L1, and the right lane line of lane 1 is denoted as L2. The distance between the left lane line L1 and the right lane line L2 is D, which is the lane width. When the distance d between G1 and G2 is greater than td, point G1 is a GNSS observation point (actual observation point); when d <= td, G2 is a GNSS observation point (virtual GNSS observation point). The line connecting G1 and G2 is perpendicular to the heading direction.
[0161] In this embodiment, by determining whether the lateral distance between the matching point information and the predicted positioning information is less than a preset threshold, different strategies can be dynamically used to correct the predicted positioning information, making the final output vehicle positioning information more accurate.
[0162] This application also provides an application scenario in which the above-described vehicle positioning method is applied. Specifically, the vehicle positioning method is applied in this scenario as follows:
[0163] When a driver needs vehicle positioning or real-time route navigation, the aforementioned vehicle positioning method can be used. After the driver logs into the navigation system on the in-vehicle terminal, the terminal automatically acquires the target vehicle's odometer and GNSS data during its journey. Based on the acquired odometer data and the target filter's state at the first moment, the terminal determines the predicted state of the target filter at the second moment. The in-vehicle terminal can then determine the predicted positioning information of the target vehicle at the second moment based on the predicted state. It then selects a target road segment from the candidate road segments on the electronic map that matches the predicted positioning information, identifies matching points within the target road segment, and corrects the predicted positioning information based on these matching points to obtain the target vehicle's positioning information at the second moment. Alternatively, the in-vehicle terminal can correct the predicted positioning information based on the acquired GNSS data to obtain the target vehicle's positioning information at the second moment. The navigation system in the in-vehicle terminal can be implemented using a standalone server or a server cluster consisting of multiple servers.
[0164] The method provided in this application can be applied to various positioning and navigation scenarios, including outdoor unmanned vehicle positioning and navigation, robot positioning and navigation, and other applications. The following description uses an adaptive positioning and navigation scenario based on electronic map data in an AR navigation scenario as an example to illustrate the vehicle positioning method provided in this application.
[0165] Traditional methods typically employ multiple Kalman filters for multi-sensor fusion localization, weighting the outputs of these filters to obtain stable positioning information—essentially providing multiple safeguards. However, each filter in this traditional approach requires input parameters such as velocity and angular velocity, and is independently connected to its own IMU, meaning the vehicle needs multiple navigation hardware systems, which places certain demands on the vehicle's hardware. Furthermore, when using Kalman filters for multi-sensor fusion localization in traditional methods, the positioning state variables are defined in a Cartesian coordinate system similar to the north-south coordinate system. Since the acquired positioning information is defined in the WGS84 coordinate system, transformations from the WGS coordinate system to the ENU coordinate system, or vice versa, require the estimated positioning information, potentially introducing errors.
[0166] Therefore, vehicle positioning and navigation based on the above methods tend to result in low accuracy of the obtained vehicle positioning information and require high hardware costs. To address these issues, this application provides a Kalman (EKF)-based positioning method. This method fuses one or more signals, such as odometer signals, GNSS positioning signals, SD map signals, visual perception signals, and HD high-precision maps, enabling both road-level and lane-level positioning. Specifically, the solution provided in this application treats visual information, SD map matching information, and GNSS positioning information as observation information, correcting the filter state independently. When GNSS observation, visual perception, and HD map matching observation information are available, the method in this application can be used to achieve lane-level positioning. When GNSS observation is available, or both GNSS observation and SD map matching observation information are available simultaneously, the method in this application can achieve road-level positioning and navigation, enabling positioning and navigation in scenarios without GNSS signals, such as underground parking garages and tunnels. These observations can be flexibly configured to achieve different functions. Furthermore, the positioning state in the method provided in this application is directly defined in the WGS84 coordinate system, and the recursive and correction processes of the Kalman filter are all performed in this coordinate system, avoiding errors during coordinate transformation. Secondly, the positioning information obtained from the SD map or using visual information and the HD map is also in the WGS84 coordinate system, and can directly participate in the Kalman correction, effectively avoiding errors during coordinate transformation, making the estimated state more accurate. That is, this application uses multiple independent observation information to correct the state, making the estimated state more accurate. Furthermore, the participation of multiple observations ensures that the state estimation does not rely solely on a single observation, effectively avoiding the influence of erroneous observations on the state, and achieving both reduced hardware costs and improved accuracy of vehicle positioning information.
[0167] On the product side, the technical solution provided in this application can be widely applied to various positioning and navigation applications. Combining odometer data, GNSS data, and SD map data, the technical solution provided in this application can be applied to in-vehicle real-time positioning and navigation, providing real-time positioning and navigation services in scenarios with poor GNSS quality, such as tunnels and underground parking lots. If combined with visually perceived lane lines and matching with HD maps, and further combined with odometer data and GNSS data, the method provided in this application can be applied to lane-level positioning and navigation products, such as… Figure 5 The diagram shown illustrates lane-level positioning and navigation. Furthermore, the solution provided in this application is a general positioning framework that can also be applied to outdoor unmanned vehicle positioning and navigation, robot positioning and navigation, and other applications.
[0168] On the technology side, such as Figure 6 The diagram shown is a schematic of the method framework applied to road-level positioning. Figure 6 The system comprises the following modules: Data Acquisition Module: Acquires odometer data and Global Navigation Satellite System (GNSS) data. SD Map Matching Module: Matches the positioning location output from the Kalman filter with the links on the SD map and feeds this information back to the filter for correction. Kalman Filter Module: Enables multi-sensor fusion and positioning output. Initialization Module: Initializes the Kalman filter.
[0169] The filter outputs location information, such as P, which includes latitude, longitude, and heading. The SD map matching module uses this location information P to select a link on the SD map for matching, essentially binding the location information to a drivable road, and returns a matching location point, which includes latitude, longitude, and heading information. The filter can then use the feedback location point information to correct its state.
[0170] It is understandable that when performing SD map matching, the positioning point is projected onto the link, similar to projecting a point outside a line onto the line. The projected point is the matching point. However, the SD map matching module needs to determine which link to project onto based on its own algorithm. When the filter receives the matching point data fed back by the SD map matching module, it performs standard EKF observation correction.
[0171] like Figure 7 The diagram shown illustrates the framework of a method applied to lane-level localization. Figure 7 The visual HD map matching module in the middle is used to process the lane line information perceived by the visual perception module and match it with the HD map to obtain high-precision positioning information, and then feed it back to the filter for correction processing.
[0172] The visual HD map matching module and the SD map matching module have similar functions, and this invention does not limit the specific implementation method.
[0173] For example, in practical implementation, the visual HD map matching module can utilize a Bayesian filtering algorithm to fuse the input visual information and the location information output by the filter, and then match them with the HD map. Specifically, the visual HD map matching module selects a lane in the HD map for matching, obtaining a matching point whose information includes latitude, longitude, and heading. After obtaining the matching point information, the visual HD map matching module can feed it back to the filter, allowing the filter to use the standard EKF correction algorithm to correct its state.
[0174] The input visual information includes the number of lanes, lane width, lane equation, and the perpendicular distance between the vehicle and the lane lines on both sides of the lane. The visual HD map matching module uses a Bayesian framework to maintain a state vector, which stores the probability of the vehicle being in each lane. During vehicle movement, the state itself undergoes state transitions, obtaining prior information about the state. This module can use the visual information as observation information and perform Bayesian posterior estimation. Similarly, this module can also match the localization information output by the filter with the HD map to calculate the vehicle's possible lanes and perform posterior estimation of the state to obtain high-precision localization information using Bayesian posterior estimation. It should be understood that the above is only one possible implementation method in this application.
[0175] This application provides a localization method based on the Kalman Fiber Optic Function (EKF), which specifically includes the following steps:
[0176] The first step is to collect GNSS data and odometer data.
[0177] Odometer data includes position data, heading data, and a timestamp. GNSS data includes a timestamp, valid longitude and latitude information, and heading angle information. For ease of description, the terminal can denote odometer data as O = (x, y, yaw), where x represents the target vehicle's X-axis coordinate in the odometer coordinate system, y represents the target vehicle's Y-axis coordinate in the odometer coordinate system, and yaw represents the target vehicle's heading angle in the odometer coordinate system. Simultaneously, the terminal can denote GNSS data as G = (lon... G ,lat G C G ), where lon G Indicates the longitude value of GNSS, lat G C represents the latitude value of GNSS. G This indicates the GNSS heading value.
[0178] The GNSS data and odometer data mentioned above do not need to be on the same frequency. For example, odometer data can be 10Hz, while GNSS data can be 1Hz. It is understandable that, in most cases, the sensor frequencies are different. For instance, in a VIO system, the IMU used for state propagation can reach 100Hz, while GPS typically operates at only 10Hz or even lower (1Hz). Since multiple pieces of information can be used independently for state correction in this embodiment, the estimated state is generally quite accurate. Therefore, a high frequency is not required for each observation; hence, there are no specific frequency requirements for the measurement data in this embodiment.
[0179] The second step is to initialize the filter if the system is not initialized.
[0180] The initialization process includes: the terminal determining a high-quality GNSS point as the starting point, and using the heading and position information of the starting point as the initial values in the initial state X of the Kalman filter; simultaneously, the terminal determines the transformation relationship T between the odometer coordinate system and the ENU coordinate system, determines the error value of the odometer data, and determines the initial values of the Kalman filter state and the initial covariance matrix. That is, in this embodiment, the Kalman filter state is defined as X = (C, lon, lat, T), meaning the state includes the vehicle heading angle, longitude, latitude, and the transformation relationship T between the odometer coordinate system and the ENU coordinate system, or equivalent data. During filter initialization, the terminal determines the initial state values and the initial covariance matrix. For example, the terminal selects a high-quality GNSS positioning point P, using the latitude, longitude, and heading of positioning point P as the initial values of the filter state; the transformation between coordinate systems is also part of the filter state. When determining the initial covariance matrix, the terminal selects an initial value based on the GNSS error as the initial covariance matrix.
[0181] In this application, the method for determining GNSS quality includes utilizing the smoothness of the GPS trajectory, the signal-to-noise ratio information in the GSV, or other independent information (such as odometer data), to examine whether the shapes of the two trajectories match, thereby determining a GNSS point with better quality. The odometer coordinate system, like the ENU, is a Cartesian coordinate system, and the transformation between the two conforms to rigid body transformation.
[0182] For example, such as Figure 8The diagram illustrates the coordinate transformation between the odometer coordinate system and the ENU coordinate system. For example, at a point O1, the odometer coordinate system is the XOY coordinate system, and the ENU coordinate system is the EON coordinate system. The Z-axis of the odometer coordinate system coincides with the U-axis of the ENU coordinate system and is perpendicular to the paper. The odometer includes heading and position information in its own coordinate system, while the ENU coordinate system contains heading information. The transformation relationship T between the two coordinate systems can be determined using these two values.
[0183] The third step is to collect new odometer data after initialization and then perform a Kalman filter recursion.
[0184] The Kalman state recursion can be performed as shown in formula (1) above. In formula (1), the second formula is the standard Kalman covariance propagation formula, and the first formula is a general representation whose specific form depends on the meaning of the odometer data and the chosen transformation formula. The function f is a symbol representing the estimated state for the next time step obtained from the current state combined with the odometer data. In this embodiment, f represents a nonlinear transformation process.
[0185] It is understood that the EKF algorithm selected in this embodiment is used for localization estimation. Similar implementations include multi-state optimization algorithms, but the corresponding computational load will be relatively large. In some cases, other algorithms can also be used for localization estimation.
[0186] In one embodiment, a specific implementation of function f was chosen, as shown below:
[0187] Assuming that the Z-axis of the odometer coordinate system coincides with the UP-axis of the ENU coordinate system, the transformation relationship T between the odometer coordinate system and the ENU coordinate system is a second-order rotation matrix, which is related to an angle, denoted as θ, where θ represents the angle between the E-axis of the ENU coordinate system and the X-axis of the odometer coordinate system. At this time, the state of the Kalman filter is denoted as X = (C, lon, lat, θ), and satisfies the formula (3) shown above.
[0188] One feasible implementation of function f is as follows:
[0189] The terminal can transform the odometer increment from the odometer coordinate system to the ENU coordinate system according to the transformation method shown in the aforementioned formula (2).
[0190] Furthermore, the terminal inputs the odometer increment in the transformed ENU coordinate system into the aforementioned formula (1), the state recursion formula of the Kalman filter, where X... k+1 =f(X) k, ΔO), and a feasible implementation of function f can be obtained as shown in the aforementioned formula (4). From formula (4), it can be seen that the state transition is a nonlinear relationship, so the Kalman filter becomes an extended Kalman filter. The corresponding state transition matrix and noise figure matrix are shown in the aforementioned formula (5).
[0191] The fourth step is to perform Kalman observation correction when new GNSS observations arrive.
[0192] The Kalman observation correction equation is shown in the aforementioned formula (6). It can be understood that each scheme will have its own considerations when calculating the measurement error. For example, the technical solution of this application considers the inherent characteristics of GNSS when calculating the measurement error related to GNSS. When the lateral distance between the GNSS positioning point and the Kalman filter positioning point is less than a certain value, no lateral correction is performed, that is, lateral information is not included in Z. This is an optimization point in this application.
[0193] When the terminal performs Kalman observation correction based on GNSS, the observation noise is adjusted according to the GNSS quality; that is, low-quality GNSS corresponds to higher observation noise, and high-quality GNSS corresponds to lower observation noise. This embodiment does not specifically limit the method for determining GNSS quality.
[0194] When performing GNSS observation correction at the terminal, considering GNSS positioning errors, if the terminal determines that the lateral distance between the GNSS positioning point and the Kalman state positioning point is less than a threshold td, GNSS observations will not undergo lateral correction, only longitudinal correction. Conversely, if the lateral distance is greater than or equal to the threshold td, both lateral and longitudinal corrections will be performed. The value of td is related to GNSS longitude, and this invention does not impose specific value limitations. Lateral refers to the direction perpendicular to the vehicle's direction of travel, and longitudinal refers to the direction parallel to the direction of travel. Lateral correction refers to correction performed in the lateral direction, while longitudinal correction refers to correction performed in the direction of travel.
[0195] In addition, when the terminal performs GNSS observation correction, the state correction error is calculated, the state is corrected, and the covariance is corrected according to the standard Kalman correction form. At the same time, the terminal will also correct the rotation transformation relationship T between the odometer coordinate system and the northeast-sky coordinate system, specifically referring to the correction method shown in the aforementioned formula (7).
[0196] Fifth, optionally, when an SD map exists, perform SD map matching correction based on the matching information of the SD map.
[0197] SD map matching refers to matching the positioning information output by the Kalman filter with links on the SD map, selecting the most suitable link, and calculating the positioning information of the corresponding snap-in point. The snap-in point positioning information includes the road network direction, the longitude and latitude of the snap-in point.
[0198] SD map matching correction is to correct the state of the filter according to the longitude, latitude, and heading angle of the adsorption point and the road link output by the SD map matching, in accordance with the aforementioned formula (6).
[0199] During SD map matching and correction, if the difference between the heading angle of the current state and the heading angle of the road link is greater than a selected threshold, the heading angle output by the SD map matching is considered invalid, and the corresponding heading angle measurement error is 0.
[0200] Step 6, optionally, when visual perception is present, the terminal matches the visual perception with the HD map and uses the matching result to correct the state of the Kalman filter.
[0201] Visual perception refers to the perception of road information, including lane lines, number of lanes, current lane width, distance of the vehicle from the left and right lane lines, and the current lane number. The terminal matches the visual perception results with the HD map to calculate the current location of the vehicle.
[0202] The output of the visual perception and HD map matching module includes the longitude and latitude of the positioning point, lane width, lane number, distance of the vehicle from the left and right lane lines, lane heading angle, and positioning reliability probability. For example, if the current feedback positioning point is reliable, the terminal can directly use formula (6) for Kalman correction. If the current positioning point is unreliable, but the distance of the vehicle from the left and right lanes is reliable, the terminal can use the left and right distances and lane width to calculate an observation information, and then perform Kalman correction according to formula (6) based on the observation information. In addition, if the difference between the current heading angle and the feedback lane heading angle is greater than a certain value, it can be determined that the lane heading angle is unreliable, and the corresponding heading angle measurement error is 0. For example, when the vehicle changes lanes, this is the above situation, such as... Figure 9 The diagram illustrates lane-level lane change guidance. For example, if there is an intersection 500 meters ahead of the target vehicle, to remind travelers to change lanes in advance, the terminal can display lane-level lane change guidance 200 meters ahead of the target vehicle. (See reference.) Figure 9 Figure (a)
[0203] When performing visual perception observation and correction at the terminal, the terminal can adjust the measurement error matrix according to the probability of feedback when calculating the measurement error matrix. A higher probability corresponds to a smaller error, and a lower probability corresponds to a larger error.
[0204] In this embodiment, the Kalman filtering method is used as the positioning framework to achieve the fusion of multiple signals and data, combining the advantages of various signals and avoiding the loss of a single signal. Within the method framework provided in this application, the observed signals can be flexibly configured to achieve adaptive positioning schemes for different scenarios and with varying degrees of accuracy. For example, when visual perception and HD maps are available, this application can be applied to lane-level positioning and navigation products. Furthermore, the states in this application are directly defined in the WGS coordinate system, avoiding errors caused by coordinate transformations in traditional methods. Finally, because the Kalman filtering scheme used in this embodiment has few state variables, low dimensionality, and low computational cost, it is a lightweight and widely applicable positioning scheme.
[0205] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0206] Based on the same inventive concept, this application also provides a vehicle positioning device for implementing the vehicle positioning method described above. The solution provided by this device is similar to the solution described in the above method; therefore, the specific limitations in one or more vehicle positioning device embodiments provided below can be found in the limitations of the vehicle positioning method described above, and will not be repeated here.
[0207] In one embodiment, such as Figure 10 As shown, a vehicle positioning device is provided, including: an acquisition module 1002, a determination module 1004, and a correction module 1006, wherein:
[0208] The acquisition module 1002 is used to acquire the odometer data of the target vehicle during its driving process.
[0209] The determination module 1004 is used to determine the predicted state of the target filter at the second time based on the odometer data and the filter state of the target filter at the first time; determine the predicted positioning information of the target vehicle at the second time based on the predicted state; select the target road segment that matches the predicted positioning information from the candidate road segments of the electronic map, and determine the matching point information corresponding to the predicted positioning information in the target road segment.
[0210] The correction module 1006 is used to correct the predicted positioning information based on the matching point information to obtain the positioning information of the target vehicle at the second time moment; the positioning information and the filter state are defined in the same coordinate system.
[0211] In one embodiment, the device further includes an initialization module. The acquisition module is further configured to acquire historical odometer data and navigation positioning data of the target vehicle during its driving process; the initialization module is configured to initialize the filter based on the historical odometer data and the navigation positioning data; during the initialization process, a target position is selected from the navigation positioning data as a starting positioning point; and the initial filter state is determined based on the heading information and position information of the starting positioning point.
[0212] In one embodiment, the determining module is further configured to determine the odometer increment based on the odometer data at different times; and determine the prediction state of the target filter at a second time based on the odometer increment and the filter state of the target filter at a first time.
[0213] In one embodiment, the device further includes: a coordinate transformation module, configured to perform coordinate transformation on the odometer increment according to a coordinate transformation relationship to obtain the odometer increment in the target coordinate system; the coordinate transformation relationship is a transformation relationship between the odometer coordinate system and the target coordinate system; the determination module is further configured to determine the prediction state of the target filter in the second time based on the odometer increment in the target coordinate system and the filter state of the target filter in the first time.
[0214] In one embodiment, the apparatus further includes: a selection module, configured to select a target road segment that matches the predicted positioning information from candidate road segments of the first precision map when the electronic map is a first precision map; the determination module is further configured to determine the projection point information of the predicted positioning information in the target road segment; and use the projection point information as the matching point information corresponding to the predicted positioning information.
[0215] In one embodiment, the apparatus further includes: a fusion module. The acquisition module is further configured to acquire visual information carrying lane information when the electronic map is a second-precision map; the fusion module is configured to fuse the visual information with the predicted positioning information to obtain fused positioning information; the selection module is further configured to select a target lane that matches the fused positioning information from the candidate lanes of the second-precision map; and the determination module is further configured to determine matching point information corresponding to the fused positioning information in the target lane.
[0216] In one embodiment, the apparatus further includes: an execution module, configured to perform a step of correcting the predicted positioning information based on the matching point information when the confidence level of the matching point information is determined to be greater than a confidence threshold; a determination module, configured to determine a first distance value between the target vehicle and a first lane line, and a second distance value between the target vehicle and a second lane line when the confidence level of the matching point information is determined to be less than or equal to the confidence threshold; when the first distance value and the second distance value satisfy a confidence distance condition, determining target observation information based on the first distance value, the second distance value, and the lane width; the lane width being the distance between the first lane line and the second lane line; and a correction module, configured to correct the predicted positioning information based on the target observation information to obtain the positioning information of the target vehicle at the second time moment.
[0217] In one embodiment, the selection module is further configured to select a target lane that matches the predicted positioning information from the candidate lanes of the second electronic map when the electronic map is a second-precision map; the determination module is further configured to determine matching point information corresponding to the predicted positioning information in the target lane.
[0218] In one embodiment, the determining module is further configured to determine the observation matrix and observation noise; determine the correction error of the filter state based on the matching point information, the prediction covariance matrix of the target filter at the first time moment, the observation matrix, and the observation noise; the correction module is further configured to correct the prediction state based on the correction error to obtain the corrected prediction state; the determining module is further configured to determine the positioning information of the target vehicle at the second time moment based on the corrected prediction state.
[0219] In one embodiment, the acquisition module is further configured to acquire an initial covariance matrix and an initial state transition matrix; the determination module is further configured to determine the prediction covariance matrix of the target filter at a first time step based on the initial covariance matrix, the initial state transition matrix, the linearity of the odometer, and the measurement noise of the odometer.
[0220] In one embodiment, the correction module is further configured to perform longitudinal correction on the predicted state according to the correction error when the lateral distance between the matching point information and the predicted positioning information is less than or equal to a preset threshold, to obtain a corrected predicted state; and to perform longitudinal and lateral correction on the predicted state according to the correction error when the lateral distance between the matching point information and the predicted positioning information is greater than the preset threshold, to obtain a corrected predicted state.
[0221] Each module in the aforementioned vehicle positioning device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the corresponding operations of each module.
[0222] In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 11 As shown, the computer device includes a processor, memory, input / output interface, communication interface, display unit, and input device. The processor, memory, and input / output interface are connected via a system bus, and the communication interface, display unit, and input device are also connected to the system bus via the input / output interface. The processor provides computing and control capabilities. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage medium. The input / output interface is used for exchanging information between the processor and external devices. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When executed by the processor, the computer program implements a vehicle positioning method. The display unit of the computer device is used to form a visually visible image. It can be a display screen, a projection device, or a virtual reality imaging device. The display screen can be an LCD screen or an e-ink screen. The input device of the computer device can be a touch layer covering the display screen, or buttons, trackballs, or touchpads set on the casing of the computer device, or external keyboards, touchpads, or mice, etc.
[0223] Those skilled in the art will understand that Figure 11 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0224] In one embodiment, a computer device is also provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps in the above method embodiments.
[0225] In one embodiment, a computer-readable storage medium is provided storing a computer program that, when executed by a processor, implements the steps in the above method embodiments.
[0226] In one embodiment, a computer program product or computer program is provided, the computer program product or computer program including computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium, and executes the computer instructions, causing the computer device to perform the steps in the above method embodiments.
[0227] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties, and the collection, use and processing of the relevant data shall comply with the relevant laws, regulations and standards of the relevant countries and regions.
[0228] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.
[0229] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0230] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A vehicle positioning method, characterized in that, The method includes: Acquire odometer data of the target vehicle during its driving process; Based on the odometer data and the filter state of the target filter at the first moment, the predicted state of the target filter at the second moment is determined. The predicted location information of the target vehicle at the second moment is determined based on the predicted state; Select a target road segment that matches the predicted positioning information from the candidate road segments on the electronic map, and determine the matching point information corresponding to the predicted positioning information in the target road segment; When the credibility of the matching point information is determined to be greater than the credibility threshold, the predicted positioning information is corrected based on the matching point information to obtain the positioning information of the target vehicle at the second time moment; the positioning information and the filter state are defined in the same coordinate system. When the credibility of the matching point information is determined to be less than or equal to the credibility threshold, a first distance value between the target vehicle and the first lane line is determined, and a second distance value between the target vehicle and the second lane line is determined. When the first distance value and the second distance value satisfy the reliable distance condition, target observation information is determined based on the first distance value, the second distance value, and the lane width; the lane width is the distance between the first lane line and the second lane line. The predicted positioning information is corrected based on the target observation information to obtain the positioning information of the target vehicle at the second time moment.
2. The method according to claim 1, characterized in that, Before acquiring the odometer data of the target vehicle during its driving process, the method further includes: Acquire historical odometer data and navigation positioning data of the target vehicle during its driving process; The filter is initialized based on the historical odometer data and the navigation positioning data; During the initialization process, the target location is selected from the navigation and positioning data as the starting positioning point; Based on the heading and position information of the starting positioning point, the initial filter state is determined.
3. The method according to claim 1, characterized in that, The odometer data includes odometer data at different times; Determining the predicted state of the target filter at the second time based on the odometer data and the filter state of the target filter at the first time moment includes: Based on the odometer data at different times, determine the odometer increment; Based on the odometer increment and the filter state of the target filter at the first time, the predicted state of the target filter at the second time is determined.
4. The method according to claim 3, characterized in that, The step of determining the predicted state of the target filter at the second time step based on the odometer increment and the filter state of the target filter at the first time step includes: The odometer increment is transformed according to the coordinate transformation relationship to obtain the odometer increment in the target coordinate system; the coordinate transformation relationship is the transformation relationship between the odometer coordinate system and the target coordinate system. The predicted state of the target filter at the second time is determined based on the odometer increment in the target coordinate system and the filter state of the target filter at the first time.
5. The method according to claim 1, characterized in that, The step of selecting a target road segment from candidate road segments on the electronic map that matches the predicted positioning information, and determining matching point information corresponding to the predicted positioning information within the target road segment, includes: When the electronic map is a first-precision map, a target road segment that matches the predicted positioning information is selected from the candidate road segments of the first-precision map. Determine the projection point information of the predicted positioning information in the target road segment; The projection point information is used as the matching point information corresponding to the predicted positioning information.
6. The method according to claim 1, characterized in that, The step of selecting a target road segment from candidate road segments on the electronic map that matches the predicted positioning information, and determining matching point information corresponding to the predicted positioning information within the target road segment, includes: When the electronic map is a second-precision map, visual information carrying lane information is acquired; The visual information is fused with the predicted positioning information to obtain the fused positioning information; Among the candidate lanes in the second precision map, the target lane that matches the fused positioning information is selected; In the target lane, determine the matching point information corresponding to the fused positioning information.
7. The method according to claim 1, characterized in that, The step of selecting a target road segment from candidate road segments on the electronic map that matches the predicted positioning information, and determining matching point information corresponding to the predicted positioning information within the target road segment, includes: When the electronic map is a second-precision map, the target lane that matches the predicted positioning information is selected from the candidate lanes of the second-precision map; In the target lane, determine the matching point information corresponding to the predicted positioning information.
8. The method according to claim 1, characterized in that, The step of correcting the predicted positioning information based on the matching point information to obtain the positioning information of the target vehicle at the second time moment includes: Determine the observation matrix and observation noise; The correction error of the filter state is determined based on the matching point information, the prediction covariance matrix of the target filter at the first time, the observation matrix, and the observation noise. The predicted state is corrected based on the correction error to obtain the corrected predicted state; Based on the corrected predicted state, the location information of the target vehicle at the second time moment is determined.
9. The method according to claim 8, characterized in that, The method further includes: Obtain the initial covariance matrix and the initial state transition matrix; Based on the initial covariance matrix, the initial state transition matrix, the linearity of the odometer, and the measurement noise of the odometer, the prediction covariance matrix of the target filter at the first time step is determined.
10. The method according to claim 9, characterized in that, The step of correcting the predicted state based on the correction error to obtain the corrected predicted state includes: When the lateral distance between the matching point information and the predicted positioning information is less than or equal to a preset threshold, the predicted state is longitudinally corrected according to the correction error to obtain the corrected predicted state. When the lateral distance between the matching point information and the predicted positioning information is greater than a preset threshold, the predicted state is corrected longitudinally and laterally according to the correction error to obtain the corrected predicted state.
11. A vehicle positioning device, characterized in that, The device includes: The acquisition module is used to acquire odometer data of the target vehicle during its driving process; The determination module is used to determine the predicted state of the target filter at a second time based on the odometer data and the filter state of the target filter at a first time; determine the predicted positioning information of the target vehicle at the second time based on the predicted state; select a target road segment that matches the predicted positioning information from the candidate road segments of the electronic map, and determine the matching point information corresponding to the predicted positioning information in the target road segment; An execution module is used to correct the predicted positioning information based on the matching point information when the confidence level of the matching point information is determined to be greater than a confidence level threshold, so as to obtain the positioning information of the target vehicle at the second time moment; the positioning information and the filter state are defined in the same coordinate system. The determining module is further configured to, when the confidence level of the matching point information is less than or equal to a confidence threshold, determine a first distance value between the target vehicle and the first lane line, and determine a second distance value between the target vehicle and the second lane line; when the first distance value and the second distance value satisfy a confidence distance condition, determine target observation information based on the first distance value, the second distance value, and the lane width; the lane width is the distance between the first lane line and the second lane line; The correction module is used to correct the predicted positioning information based on the target observation information to obtain the positioning information of the target vehicle at the second time moment.
12. The vehicle positioning device according to claim 11, characterized in that, The device further includes: an initialization module, wherein the acquisition module is further configured to acquire historical odometer data and navigation positioning data of the target vehicle during its driving process; the initialization module is configured to initialize the filter based on the historical odometer data and the navigation positioning data; during the initialization process, a target position is selected from the navigation positioning data as a starting positioning point; and the initial filter state is determined based on the heading information and position information of the starting positioning point.
13. The vehicle positioning device according to claim 11, characterized in that, The odometer data includes odometer data at different times; the determining module is further configured to determine the odometer increment based on the odometer data at different times; and determine the prediction state of the target filter at a second time based on the odometer increment and the filter state of the target filter at a first time.
14. The vehicle positioning device according to claim 13, characterized in that, The device further includes: a coordinate transformation module, used to perform coordinate transformation on the odometer increment according to the coordinate transformation relationship to obtain the odometer increment in the target coordinate system; the coordinate transformation relationship is the transformation relationship between the odometer coordinate system and the target coordinate system; the determination module is also used to determine the prediction state of the target filter in the second time based on the odometer increment in the target coordinate system and the filter state of the target filter in the first time.
15. The vehicle positioning device according to claim 11, characterized in that, The device further includes: a selection module, used to select a target road segment that matches the predicted positioning information from candidate road segments of the first precision map when the electronic map is a first precision map; the determination module is further used to determine the projection point information of the predicted positioning information in the target road segment; and to use the projection point information as the matching point information corresponding to the predicted positioning information.
16. The vehicle positioning device according to claim 11, characterized in that, The device further includes: a fusion module, wherein the acquisition module is further configured to acquire visual information carrying lane information when the electronic map is a second-precision map; a fusion module is configured to fuse the visual information with the predicted positioning information to obtain fused positioning information; a selection module is further configured to select a target lane that matches the fused positioning information from the candidate lanes of the second-precision map; and a determination module is further configured to determine matching point information corresponding to the fused positioning information in the target lane.
17. The vehicle positioning device according to claim 11, characterized in that, The selection module is further configured to select a target lane that matches the predicted positioning information from the candidate lanes of the second precision map when the electronic map is a second precision map; the determination module is further configured to determine the matching point information corresponding to the predicted positioning information in the target lane.
18. The vehicle positioning device according to claim 11, characterized in that, The determining module is also used to determine the observation matrix and observation noise; based on the matching point information, the prediction covariance matrix of the target filter at the first time moment, the observation matrix and the observation noise, to determine the correction error of the filter state; the correction module is also used to correct the prediction state based on the correction error to obtain the corrected prediction state; the determining module is also used to determine the positioning information of the target vehicle at the second time moment based on the corrected prediction state.
19. The vehicle positioning device according to claim 18, characterized in that, The acquisition module is also used to acquire the initial covariance matrix and the initial state transition matrix; the determination module is also used to determine the prediction covariance matrix of the target filter at the first time based on the initial covariance matrix, the initial state transition matrix, the linearity of the odometer, and the measurement noise of the odometer.
20. The vehicle positioning device according to claim 19, characterized in that, The correction module is also used to perform longitudinal correction on the predicted state according to the correction error when the lateral distance between the matching point information and the predicted positioning information is less than or equal to a preset threshold, so as to obtain a corrected predicted state; and to perform longitudinal and lateral correction on the predicted state according to the correction error when the lateral distance between the matching point information and the predicted positioning information is greater than the preset threshold, so as to obtain a corrected predicted state.
21. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 10.
22. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 10.
23. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 10.