Vehicle Control Method, Device and Autonomous Vehicle Based on Local Map

By generating local map data in autonomous driving vehicles and performing vehicle control, the problem that high-precision map updates are difficult to keep up with actual road changes is solved, and the flexibility and experience of autonomous driving is improved, and the cost of map construction is reduced.

CN115476880BActive Publication Date: 2025-05-27BEIJING BAIDU NETCOM SCI & TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211207642.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-09-30
Publication Date
2025-05-27
Estimated Expiration
2042-09-30

AI Technical Summary

Technical Problem

The update of high-precision maps is difficult to keep up with the actual change speed in actual roads, which leads to the problem that the high-precision map data obtained by the vehicle is inconsistent with the actual road conditions when driving on the road, which affects the autonomous driving experience.

Method used

By collecting positioning information and perception information during the vehicle's driving process, local map data for the current driving area are generated, and vehicle control is performed based on local map data, ensuring that the vehicle can obtain the required map data in any driving environment, improving the flexibility of autonomous driving.

Benefits of technology

It realizes the flexibility of autonomous driving of vehicles in different driving environments, reduces the cost of building maps for autonomous driving, and reduces the problem of autonomous driving experience caused by inconsistent with the map data and actual roads.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115476880B_ABST
    Figure CN115476880B_ABST
Patent Text Reader

Abstract

The present disclosure provides a vehicle control method, device and autonomous vehicle based on a local map, relating to the field of artificial intelligence technology, specifically relating to technical fields such as vehicle positioning and external information perception, map construction, autonomous driving, data caching, vehicle safety control decision-making, etc., and can be applied to scenarios such as autonomous driving, assisted driving, vehicle safety control, etc. The specific implementation scheme includes: during the driving process of the vehicle, collecting the positioning information and perception information of the vehicle; the perception information includes lane line information and road boundary information of the current driving area of the vehicle; generating local map data of the current driving area according to the positioning information and perception information; controlling the vehicle according to the local map data. The present disclosure can meet the map data requirements for vehicle control decisions for any driving environment of the vehicle, improve the flexibility of autonomous driving of the vehicle in different driving environments, and at the same time reduce the map construction cost of autonomous driving.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of artificial intelligence technologies, specifically to vehicle positioning and external information perception, map construction, autonomous driving, data caching, vehicle safety control decision-making and other technical fields, and can be applied to scenarios such as autonomous driving, assisted driving, and vehicle safety control. In particular, it relates to a vehicle control method, device, and autonomous vehicle based on a local map. Background Art

[0002] Compared with ordinary maps, high-precision maps can provide map information with higher precision and richer content. In the scenario of autonomous driving, vehicles can rely on the prior knowledge provided by high-precision maps for control decisions.

[0003] However, the link of the process from the production annotation to the release of high-precision maps is relatively complex, and the update of high-precision maps is difficult to keep up with the actual road changes in reality. Or rather, the change frequency of the actual road is much higher than the update speed of high-precision maps. When an autonomous vehicle is driving on the road, it may encounter scenarios where the data of the high-precision map obtained by the vehicle is inconsistent with the actual road conditions due to actual road changes, or there is no data of the high-precision map in some driving areas. For such scenarios, it is often necessary for humans to take over the autonomous vehicle, and the autonomous driving experience is poor. Summary of the Invention

[0004] The present disclosure provides a vehicle control method, device, and autonomous vehicle based on a local map, which can ensure the map data requirements for vehicle control decisions for any driving environment of the vehicle and improve the flexibility of autonomous driving of the vehicle in different driving environments.

[0005] According to a first aspect of the present disclosure, there is provided a vehicle control method based on a local map, the method comprising:

[0006] During the driving process of the vehicle, collect the positioning information and perception information of the vehicle; the perception information includes the lane line information and road boundary information of the current driving area of the vehicle; generate local map data of the current driving area according to the positioning information and perception information; control the vehicle according to the local map data.

[0007] According to a second aspect of the present disclosure, there is provided a vehicle control device based on a local map, the device comprising:

[0008] A positioning and perception unit, configured to collect the positioning information and perception information of the vehicle during the driving process of the vehicle; the perception information includes the lane line information and road boundary information of the current driving area of the vehicle; a local mapping unit, configured to generate local map data of the current driving area according to the positioning information and perception information; a vehicle control unit, configured to control the vehicle according to the local map data.

[0009] According to a third aspect of the present disclosure, there is provided an electronic device, including: at least one processor; and a memory communicatively connected to the at least one processor; wherein, the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the method as described in the first aspect.

[0010] According to a fourth aspect of the present disclosure, there is provided a non-transitory computer-readable storage medium storing computer instructions for causing a computer to execute the method as described in the first aspect.

[0011] According to a fifth aspect of the present disclosure, there is provided a computer program product including a computer program which, when executed by a processor, implements the method as described in the first aspect.

[0012] According to a sixth aspect of the present disclosure, there is provided an autonomous driving system or an autonomous driving vehicle, the autonomous driving system or the autonomous driving vehicle including the electronic device as described in the third aspect for implementing the method as described in the first aspect.

[0013] The present disclosure collects the positioning information and perception information of the vehicle during the vehicle driving process, and the perception information includes the lane line information and road boundary information of the current driving area of the vehicle; generates local map data of the current driving area according to the positioning information and the perception information; and controls the vehicle according to the local map data, which can realize any driving environment of the vehicle, ensure the map data requirements for vehicle control decisions, improve the flexibility of autonomous driving of the vehicle in different driving environments, and can also significantly reduce the map construction cost of autonomous driving.

[0014] It should be understood that the content described in this part is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it used to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] The drawings are used to better understand the solution and do not constitute a limitation to the present disclosure. Among them:

[0016] Figure 1 is a schematic flowchart of a vehicle control method based on a local map provided by an embodiment of the present disclosure;

[0017] Figure 2 is another schematic flowchart of a vehicle control method based on a local map provided by an embodiment of the present disclosure;

[0018] Figure 3Schematic diagram of the composition of the vehicle control system provided by the embodiments of the present disclosure;

[0019] Figure 4 Schematic diagram of the composition of the cache of the client process provided by the embodiments of the present disclosure;

[0020] Figure 5 Schematic diagram of the composition of the vehicle control device based on the local map provided by the embodiments of the present disclosure;

[0021] Figure 6 Another schematic diagram of the composition of the vehicle control device based on the local map provided by the embodiments of the present disclosure;

[0022] Figure 7 Schematic block diagram of an example electronic device 700 that can be used to implement the embodiments of the present disclosure. Detailed implementation manners

[0023] The following describes exemplary embodiments of the present disclosure with reference to the accompanying drawings. Various details of the embodiments of the present disclosure are included to assist understanding, and they should be considered merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for clarity and conciseness, descriptions of well-known functions and structures are omitted below.

[0024] It should be understood that in the embodiments of the present disclosure, the character " / " generally represents an "or" relationship between the associated objects before and after. Terms such as "first" and "second" are only used for descriptive purposes and cannot be construed as indicating or implying relative importance or implicitly specifying the quantity of the indicated technical features.

[0025] Compared with ordinary maps, high-precision maps can provide map information with higher precision and richer content. In the context of autonomous driving, vehicles can rely on the prior knowledge provided by high-precision maps for control decisions.

[0026] However, the link of the process from the production annotation to the release of high-precision maps is relatively complex, and it is difficult for the update of high-precision maps to keep up with the actual road changes in reality. Or rather, the change frequency of the actual road is much higher than the update speed of high-precision maps. When an autonomous vehicle is driving on the road, it may encounter scenarios where the data of the high-precision map obtained by the vehicle is inconsistent with the actual road conditions due to actual road changes, or there is no data of the high-precision map in some driving areas. For such scenarios, it is often necessary for humans to take over the autonomous vehicle, resulting in a poor autonomous driving experience.

[0027] In this background art, the present disclosure provides a vehicle control method based on a local map, which can meet the map data requirements for vehicle control decisions in any driving environment of the vehicle and improve the flexibility of autonomous driving of the vehicle in different driving environments.

[0028] Exemplarily, the execution subject of this method can be a vehicle control system. The vehicle control system can be implemented locally in the vehicle or at a remote end (such as a server) connected to the vehicle. For example, the vehicle control system can be implemented in an in-vehicle chip, a central control device, etc. of the vehicle locally. Again, for example, the remote end can be a computer or a server connected to the vehicle, or can also be other devices with data processing capabilities. There is no limitation on the implementation of the vehicle control system here. It should be understood that the vehicle control system can include each module mentioned in the following method embodiments, such as: a map engine, a control decision module, etc.

[0029] In some embodiments, the above vehicle control system can be a robot operating system (ROS) in autonomous driving. For example, ROS can be the cybertron system of Apollo.

[0030] In some embodiments, the above server can be a single server, or, alternatively, can also be a server cluster composed of multiple servers. In some implementation manners, the server cluster can also be a distributed cluster. The present disclosure also does not limit the specific implementation manner of the server.

[0031] The vehicle control method based on the local map will be described exemplarily below.

[0032] Figure 1 It is a schematic flowchart of the vehicle control method based on the local map provided by the embodiments of the present disclosure. As Figure 1 shown, this method can include:

[0033] S101. During the driving process of the vehicle, collect the positioning information and perception information of the vehicle; the perception information includes lane line information and road boundary information of the current driving area of the vehicle.

[0034] Exemplarily, the vehicle can include a positioning device and a perception device. Among them, the positioning device can include a global positioning system (GPS) locator, a Beidou locator, etc., and can be used to obtain the positioning information of the vehicle. The positioning information can be longitude and latitude coordinates, or other geographical coordinates, which are not limited here.

[0035] The perception device may include: distance sensors, light sensors, lidar, cameras, and other devices capable of collecting information on the surrounding environment in the current driving area of the vehicle. The perception information may be the information collected by the aforementioned perception devices, such as: the images collected by the camera, the distances of obstacles around the vehicle collected by the distance sensor, etc. The perception information may include lane line information and road boundary information in the current driving area of the vehicle. For example, the images collected by the camera may contain lane lines and road boundary lines.

[0036] In S101, the above positioning information and perception information may be collected during the driving of the vehicle. For example, the vehicle control system may include a positioning and perception module, and the positioning and perception module may be connected to the vehicle's positioning device and perception device to obtain the above positioning information and perception information.

[0037] Exemplarily, the positioning and perception module may be a software module, or may also be a hardware module, which is not limited herein.

[0038] S102. Generate local map data for the current driving area according to the positioning information and the perception information.

[0039] As described above, the perception information includes lane line information and road boundary information in the current driving area of the vehicle. In S102, local map data for the current driving area may be constructed according to the positioning information and the perception information.

[0040] For example, according to the positioning information and the perception information, the position information of the lane lines and the road boundary lines may be determined; the position information of the center line of the lane may also be determined according to the lane lines. Based on the position information of the lane lines and the road boundary lines, the position information of the center line of the lane, as well as the distances of obstacles around the vehicle, the objects included in the image, etc., local map data for the current driving area of the vehicle may be constructed.

[0041] Optionally, the data format of the local map data constructed in S102 may conform to the data format of the high-precision map data commonly used in autonomous driving.

[0042] Compared with the high-precision map data commonly used in autonomous driving, the local map data constructed in S102 is a simpler but map data that can meet the driving requirements of autonomous vehicles. For example, the following S103 may be executed to control an autonomous vehicle using the local map data.

[0043] S103. Control the vehicle according to the local map data.

[0044] Exemplarily, when a vehicle is in autonomous driving, it usually needs map data to make control decisions. For example, it can obtain the driving route, lane division, etc. according to the map data. In this embodiment, the vehicle control system can make decisions based on the local map data generated in S102 to control the vehicle for autonomous driving. For example, it can control the vehicle to accelerate or decelerate, change lanes, adjust the driving direction, etc. according to the local map data. Since the local map data is generated based on the vehicle's positioning information and perception information, and the perception information includes lane line information and road boundary information of the vehicle's current driving area, there is always available map data to support the vehicle's autonomous driving when the vehicle travels in any driving environment.

[0045] Optionally, in the embodiments of the present disclosure, in addition to lane line information and road boundary information, the perception information may further include more necessary information required for vehicle autonomous driving, which will not be enumerated one by one here.

[0046] In the embodiments of the present disclosure, during the vehicle driving process, the vehicle's positioning information and perception information are collected, where the perception information includes lane line information and road boundary information of the vehicle's current driving area; according to the positioning information and perception information, local map data of the current driving area is generated; and according to the local map data, the vehicle is controlled, which can realize the vehicle's arbitrary driving environment, ensure the map data requirements for vehicle control decisions, and improve the flexibility of vehicle autonomous driving in different driving environments.

[0047] For example, in the embodiments of the present disclosure, complex high-precision map data is not required, and there is no need to consider the problems of real changes in the actual road and the lack of high-precision map data in some driving areas. In any driving scenario, the embodiments of the present disclosure can construct local map data of the vehicle's current driving area in real time and control the vehicle according to the local map data of the vehicle's current driving area. Thus, the flexibility of vehicle autonomous driving in different driving environments can be improved.

[0048] In addition, compared with the current solution for controlling a vehicle based on high-precision map data, the embodiments of the present disclosure significantly reduce the map construction cost of autonomous driving.

[0049] In some embodiments, in the vehicle control method based on a local map provided by the embodiments of the present disclosure, high-precision map data and the above-mentioned Figure 1In combination with the embodiments shown, when the vehicle is traveling in a driving area with high-precision map data and the driving area of the vehicle has not undergone a real change relative to the high-precision map data, the vehicle can be controlled according to the high-precision map data. When there is no high-precision map data in the driving area of the vehicle, or when the vehicle is traveling in a driving area with high-precision map data but the driving area of the vehicle has undergone a real change relative to the high-precision map data (that is, it is detected that the high-precision map data is inconsistent with the real scene of the current driving area), the vehicle can be controlled according to the Figure 1 embodiments shown, according to the local map data.

[0050] For example, on the basis of the Figure 1 embodiments shown, the method may further include: obtaining the high-precision map data of the preset current driving area; detecting whether the high-precision map data is consistent with the real scene of the current driving area according to the positioning information and the perception information; when the high-precision map data is consistent with the real scene of the current driving area, controlling the vehicle according to the high-precision map data. The step of controlling the vehicle according to the local map data in the above S103 may include: when the high-precision map data is inconsistent with the real scene of the current driving area or the high-precision map data does not exist, controlling the vehicle according to the local map data.

[0051] Among them, the real change means that the road conditions have changed. For example, the lane line planning of the road has changed, obstacles have been added or reduced on the road, etc. The situation of real change is not limited here. After the real change occurs, the high-precision map data and the real scene of the current driving area will be inconsistent.

[0052] Next, taking Figure 2 as an example, an exemplary description of this embodiment will be given.

[0053] Exemplarily, Figure 2 is another flowchart of the vehicle control method based on the local map provided by the embodiments of the present disclosure. As Figure 2 shown, the method may include:

[0054] S201. During the driving of the vehicle, collect the positioning information and perception information of the vehicle; the perception information includes the lane line information and road boundary information of the current driving area of the vehicle.

[0055] S201 may refer to the above S101 and will not be elaborated here.

[0056] S202. Generate the local map data of the current driving area according to the positioning information and the perception information.

[0057] S202 may refer to the above S102 and will not be elaborated here either.

[0058] S203. Determine whether there is pre - set high - precision map data in the current driving area.

[0059] If so, execute S204 and S205 in sequence; if not, execute S207.

[0060] For example, the high - precision map data can be pre - set in the vehicle or in the cloud connected to the vehicle. In S203, it can be queried whether there is pre - set high - precision map data in the current driving area. For example, it can be queried whether there is pre - set high - precision map data in the current driving area according to the positioning information.

[0061] S204. Obtain the high - precision map data of the current driving area pre - set.

[0062] Exemplarily, when it is queried in S203 that there is pre - set high - precision map data in the current driving area, the pre - set high - precision map data of the current driving area can be obtained and S205 can be executed.

[0063] S205. Detect whether the high - precision map data is consistent with the real - world scene of the current driving area according to the positioning information and the perception information.

[0064] If so, execute S206; if not, execute S207.

[0065] Exemplarily, according to the positioning information and the perception information, it can be compared whether the real - world scene of the current driving area has changed (i.e., real - world change, specifically, the explanation about real - world change in the above text can be referred to) relative to the high - precision map data of the current driving area. When the real - world scene of the current driving area has changed relative to the high - precision map data of the current driving area, it can be determined that the high - precision map data is not consistent with the real - world scene of the current driving area. When the real - world scene of the current driving area has not changed relative to the high - precision map data of the current driving area, it can be determined that the high - precision map data is consistent with the real - world scene of the current driving area.

[0066] S206. Control the vehicle according to the high - precision map data.

[0067] Exemplarily, the way to control the vehicle according to the high - precision map data can refer to the way of making vehicle control decisions based on high - precision map data in current autonomous driving, which will not be elaborated here.

[0068] S207. Control the vehicle according to the local map data.

[0069] S207 can refer to the above - mentioned S103 and will not be elaborated again.

[0070] In this embodiment, when the vehicle is traveling in a driving area with high-precision map data and the driving area of the vehicle has not undergone any real changes relative to the high-precision map data, the vehicle is controlled according to the high-precision map data; when there is no high-precision map data in the driving area of the vehicle, or when the vehicle is traveling in a driving area with high-precision map data but the driving area of the vehicle has undergone real changes relative to the high-precision map data, the vehicle is controlled according to the local map data. This not only utilizes the high-precision characteristics of the high-precision map data to improve the vehicle's autonomous driving performance, but also enables scenarios where there is no high-precision map data in the current driving area of the vehicle and scenarios of real changes, reducing the dependence on high-precision map data, still ensuring the map data requirements for the vehicle's autonomous driving, further improving the flexibility of the vehicle's autonomous driving in different driving environments, and enhancing the performance of the vehicle's autonomous driving.

[0071] In some embodiments, the vehicle (or the vehicle control system) may include a map engine and at least one control decision-making module. Among them, the map engine includes a server process and a client process; the client process is deployed in the control decision-making module. The control decision-making module may be a brake control module, a speed control module, a direction control module, etc. for the vehicle's autonomous driving, and is not limited herein.

[0072] The step of generating local map data for the current driving area based on the positioning information and the perception information may include: generating local map data for the current driving area through the server process based on the positioning information and the perception information. The step of controlling the vehicle based on the local map data may include: broadcasting the local map data through the server process; receiving the local map data through the client process and loading the local map data into the cache of the client process for the control decision-making module to control the vehicle based on the local map data.

[0073] Exemplarily, Figure 3 is a schematic diagram of the composition of the vehicle control system provided by the embodiments of the present disclosure. As Figure 3 shown, the vehicle control system (which may also be the vehicle) may include: a positioning and perception module 310, a map engine, a control decision-making module 330, and a real change detection module 340. The map engine may include: a server process 321 and a client process 322. The client process 322 is deployed in the control decision-making module 330.

[0074] Optionally, the control decision-making module 330 may include one or more ( Figure 3 a plurality are shown in the figure). One or more client processes 322 may be deployed in one control decision-making module 330 ( Figure 3Take the deployment of a client process 322 in a control decision module 330 as an example). The control decision module 330 can be each module in autonomous driving that requires map data.

[0075] Among them, the positioning and perception module 310 can collect the positioning information and perception information of the vehicle during the driving process of the vehicle, and send the positioning information and perception information to the map engine.

[0076] Exemplarily, the ways for the positioning and perception module 310 to send the positioning information and perception information to the map engine can include: the positioning and perception module 310 broadcasts the positioning information and perception information in a broadcast manner; the map engine can receive the positioning information and perception information.

[0077] After receiving the positioning information and perception information, the map engine can generate local map data of the current driving area according to the positioning information and perception information through the service process 321.

[0078] After the service process 321 generates the local map data of the current driving area, it can broadcast the local map data in a broadcast manner.

[0079] In addition, the map engine can also obtain the high-precision map data of the current driving area preset, and broadcast the high-precision map data of the current driving area through the service process 321. It can be understood that when there is no high-precision map data in the current driving area, the service process 321 only broadcasts the local map data of the current driving area.

[0080] The reality change detection module 340 can receive the high-precision map data of the current driving area broadcast by the service process 321, and implement the function of detecting whether the high-precision map data is consistent with the real scene of the current driving area described in S205 above. The reality change detection module 340 can also broadcast the detection result of the reality change in a broadcast manner, such as the detection result includes: the high-precision map data is consistent or inconsistent with the real scene of the current driving area.

[0081] The client process 322 can receive the high-precision map data broadcast by the service process 321, and load the high-precision map data into the cache of the client process 322 for the control decision module 330 to control the vehicle according to the high-precision map data.

[0082] When the client process 322 cannot receive the high-precision map data broadcast by the service process 321, it means that there is no high-precision map data in the current driving area. The client process 322 can receive the local map data broadcast by the service process 321, and load the local map data into the cache of the client process 322 for the control decision module 330 to control the vehicle according to the local map data.

[0083] The client process 322 can also receive the detection results broadcast by the reality change detection module 340. When the detection results indicate that the high-precision map data is inconsistent with the reality scenario of the current driving area, the client process 322 can also receive the local map data broadcast by the service process 321, and load the local map data into the cache of the client process 322 for the control decision module 330 to control the vehicle according to the local map data.

[0084] Exemplarily, the client process 322 can be deployed in the control decision module 330 as a static library. For example, the control decision module 330 can include processes such as the pnc process and the perception process for autonomous driving.

[0085] In this embodiment, the client process 322 can be regarded as a switch that provides high-precision map data or local map data for the control decision module 330, enabling the control decision module 330 to use local map data to control the vehicle in scenarios where the above-mentioned reality changes or there is no high-precision map data in the current driving area; and use high-precision map data to control the vehicle in normal scenarios (where there is high-precision map data in the current driving area and no reality change occurs).

[0086] Exemplarily, the embodiment of the present disclosure can refer to the mode of using high-precision map data to control the vehicle as the high-precision map mode; and the mode of using local map data to control the vehicle as the local mapping mode.

[0087] In this embodiment, the map engine includes a service process and a client process. The client process is deployed in the control decision module. The service process sends local map data to the client process in a broadcast manner for the control decision module to use, which can reduce the implementation difficulty of controlling the vehicle based on local map data and improve the transmission efficiency of map data.

[0088] In some other embodiments, after the service process generates the local map data of the current driving area, it can also directly broadcast the local map data. The above steps of controlling the vehicle according to the local map data only include: receiving the local map data through the client process and loading the local map data into the cache of the client process for the control decision module to control the vehicle according to the local map data. There is no limitation here.

[0089] In some embodiments, the above service process broadcasts the local map data in units of frames. The above steps of receiving the local map data through the client process and loading the local map data into the cache of the client process include: receiving the local map data through the client process. When a new frame of local map data is received, the previous frame of local map data in the cache of the client process is cleared, and the new frame of local map data is loaded into the cache of the client process.

[0090] Similarly, the service process broadcasts high-precision map data in frames. When the client process receives high-precision map data, when a new frame of high-precision map data is received, the previous frame of high-precision map data in the cache of the client process can be cleared, and the new frame of high-precision map data can be loaded into the cache of the client process.

[0091] It can be understood that when the client process receives high-precision map data or local map data, the previous frame of map data in the cache may be high-precision map data or local map data. When the client process receives a new frame of map data, the previous frame of map data in the cache can be cleared.

[0092] In this embodiment, when the client process receives a new frame of map data, clearing the previous frame of map data in the cache can reduce the cache occupied by the map data and ensure the validity of the map data. For example, it can ensure that the control decision-making module can directly obtain the latest map data from the cache of the client process at any time without repeatedly searching for the previously cached map data.

[0093] In some embodiments, the cache of the client process may include a first cache and a second cache. The step of loading the local map data into the cache of the client process may include: writing the local map data into the first cache; during the process of writing the local map data into the first cache, locking the first cache and keeping the state of the second cache as readable; after writing the local map data into the first cache, synchronizing the data in the first cache to the second cache.

[0094] Exemplarily, Figure 4 is a schematic diagram of the composition of the cache of the client process provided by the embodiments of the present disclosure. As Figure 4 shown, the cache of the client process may include: buffer0 and buffer1. When buffer0 is the first cache, buffer1 is the second cache. When buffer1 is the first cache, buffer0 is the second cache.

[0095] Taking buffer0 as the first buffer and buffer1 as the second buffer as an example, when local map data needs to be written to the buffer of the client process, the local map data can be written to buffer0. During the process of writing the local map data to buffer0, lock buffer0 and keep the state of buffer1 as readable. When buffer0 is locked, buffer0 is in an unreadable state, and the control decision-making module cannot read map data from buffer0. When the state of buffer1 is readable, the control decision-making module can read map data from buffer0. After writing the local map data to buffer0, the data in buffer0 can be synchronized to buffer1.

[0096] For example, assume that in the initial state, there is no map data in buffer0 and buffer1. After the client process receives the first frame of local map data, it can first write the first frame of local map data to buffer0. During the process of writing the first frame of local map data to buffer0, lock buffer0 and keep the state of buffer1 as readable. After writing the first frame of local map data to buffer0, the data in buffer0 can be synchronized to buffer1. After synchronization, both buffer0 and buffer1 store the first frame of local map data. After the client process receives the second frame of local map data, it can first clear the first frame of local map data cached in buffer0 and write the second frame of local map data to buffer0. During the process of writing the second frame of local map data to buffer0, lock buffer0 and keep the state of buffer1 as readable. After writing the second frame of local map data to buffer0, it can first clear the first frame of local map data cached in buffer1 and synchronize the data in buffer0 to buffer1. After synchronization, both buffer0 and buffer1 store the second frame of local map data.

[0097] Similarly, the method of writing high-precision map data to the buffer of the client process can refer to the method of writing local map data to the buffer of the client process described above.

[0098] Exemplarily, in the embodiments of the present disclosure, the vehicle control system can also maintain a data maintenance thread (or referred to as a data update thread) separately for the buffer of the client process. The data maintenance thread can execute the strategy of writing map data to the buffer of the client process described above to ensure that at any time after the initial state, the control decision-making module can obtain available map data from the buffer of the client process.

[0099] In this embodiment, the cache of the client process includes a first cache and a second cache. During the process of writing local map data into the first cache, the first cache is locked, and the second cache is kept in a readable state. After writing the local map data into the first cache, the data in the first cache is synchronized to the second cache, which can reduce the waiting time when the control decision-making module queries map data from the cache of the client process, improve the efficiency of the control decision-making module in querying map data, and meet the requirements of the high real-time performance of autonomous vehicles.

[0100] Optionally, in the embodiments of the present disclosure, the above-mentioned first cache and second cache can be rotated between two caches of the client process. That is, the two caches of the client process can be rotated as the first cache for writing map data. For example, when writing the nth (n is an integer greater than 1) frame of map data, buffer0 is the first cache and buffer1 is the second cache. When writing the (n + 1)th frame of map data, buffer1 is the first cache and buffer0 is the second cache.

[0101] By rotating the two caches of the client process as the first cache for writing map data, the waiting time when the control decision-making module queries map data from the cache of the client process can be further reduced, and the efficiency of the control decision-making module in querying map data can be improved.

[0102] In some embodiments, the vehicle (or vehicle control system) includes a safety mode. The method further includes: during the vehicle driving process, when it is detected that the safety mode is triggered, the vehicle is controlled to safely pull over according to the local map data.

[0103] Different from the safety mode, the mode of controlling the vehicle according to the high-precision map data or local map data described in the above embodiments can be called the normal driving mode or the computing mode. When an emergency occurs to the vehicle, such as: suddenly detecting a pedestrian or an obstacle ahead, a possible collision, or other abnormalities of the vehicle, the vehicle can be switched from the normal driving mode to the safety mode. In the safety mode, the vehicle can be immediately controlled to safely pull over according to the map data.

[0104] In this embodiment, for any driving scenario, during the vehicle driving process, when it is detected that the safety mode is triggered, the vehicle can be controlled to safely pull over according to the local map data. The local map data is simpler, which can make the processing speed of controlling the vehicle to safely pull over in the safety mode faster and improve the safety performance of the vehicle.

[0105] Optionally, the autonomous driving mentioned in the embodiments of the present disclosure can also be replaced by assisted driving. That is, the application scenarios of the technical solutions provided in the embodiments of the present disclosure are not limited to autonomous driving, and can also be applied to assisted driving, which is not limited herein.

[0106] In an exemplary embodiment, the embodiment of the present disclosure further provides a vehicle control device based on a local map, which can be used to implement the vehicle control method based on a local map as described in the foregoing embodiment. Figure 5 It is a schematic diagram of the composition of the vehicle control device based on a local map provided by the embodiment of the present disclosure. As Figure 5 shown, the device may include: a positioning and sensing unit 501, a local mapping unit 502, and a vehicle control unit 503.

[0107] The positioning and sensing unit 501 is configured to collect the positioning information and sensing information of the vehicle during the driving process of the vehicle; the sensing information includes lane line information and road boundary information of the current driving area of the vehicle.

[0108] The local mapping unit 502 is configured to generate local map data of the current driving area according to the positioning information and the sensing information.

[0109] The vehicle control unit 503 is configured to control the vehicle according to the local map data.

[0110] Figure 6 It is another schematic diagram of the composition of the vehicle control device based on a local map provided by the embodiment of the present disclosure. Optionally, as Figure 6 shown, the device may further include: an acquisition unit 504 and a detection unit 505.

[0111] The acquisition unit 504 is configured to acquire high-precision map data of the current driving area preset.

[0112] The detection unit 505 is configured to detect whether the high-precision map data is consistent with the real scene of the current driving area according to the positioning information and the sensing information.

[0113] The vehicle control unit 503 is specifically configured to control the vehicle according to the high-precision map data when the high-precision map data is consistent with the real scene of the current driving area; when the high-precision map data is inconsistent with the real scene of the current driving area or the high-precision map data does not exist, control the vehicle according to the local map data.

[0114] Optionally, the vehicle includes a map engine and at least one control decision module; the map engine includes a service process and a client process; the client process is deployed in the control decision module.

[0115] The local mapping unit 502 is configured to generate local map data of the current driving area according to the positioning information and the sensing information through the service process.

[0116] The local mapping unit 502 is further configured to broadcast the local map data through the service process.

[0117] The vehicle control unit 503 is configured to receive local map data through a client process and load the local map data into the cache of the client process for the control decision-making module to control the vehicle based on the local map data.

[0118] Optionally, the service process broadcasts local map data in frames. The vehicle control unit 503 is specifically configured to receive local map data through the client process. When a new frame of local map data is received, the previous frame of local map data in the cache of the client process is cleared, and the new frame of local map data is loaded into the cache of the client process.

[0119] Optionally, the cache of the client process includes a first cache and a second cache. The vehicle control unit 503 is specifically configured to write the local map data into the first cache; during the process of writing the local map data into the first cache, lock the first cache and keep the second cache in a readable state; after writing the local map data into the first cache, synchronize the data in the first cache to the second cache.

[0120] Optionally, the vehicle includes a safety mode; the vehicle control unit 503 is further configured to, during the driving of the vehicle, when it detects that the safety mode is triggered, control the vehicle to safely pull over to the side of the road according to the local map data.

[0121] In the technical solution of the present disclosure, the acquisition, storage, and application of the user's personal information involved all comply with the provisions of relevant laws and regulations and do not violate public order and good customs.

[0122] According to an embodiment of the present disclosure, the present disclosure further provides an electronic device, a readable storage medium, a computer program product, and an autonomous driving system or an autonomous driving vehicle.

[0123] In an exemplary embodiment, the electronic device includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein, the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the method as described in the above embodiments. This electronic device may be the above-mentioned computer or server. Or, this electronic device may also be an in-vehicle chip, a central control device, etc. local to the above-mentioned vehicle.

[0124] In an exemplary embodiment, the readable storage medium may be a non-transitory computer-readable storage medium storing computer instructions, and the computer instructions are used to cause a computer to execute the method as described in the above embodiments.

[0125] In an exemplary embodiment, the computer program product includes a computer program, and the computer program, when executed by a processor, implements the method as described in the above embodiments.

[0126] In an exemplary embodiment, an autonomous driving system or an autonomous driving vehicle includes an electronic device as described in the above embodiments for implementing the method as described in the above embodiments.

[0127] Figure 7 FIG. shows a schematic block diagram of an example electronic device 700 that can be used to implement embodiments of the present disclosure. The electronic device is intended to represent various forms of digital computers, such as, for example, a laptop computer, a desktop computer, a workbench, a personal digital assistant, a server, a blade server, a mainframe computer, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as, for example, a personal digital processor, a cellular phone, a smart phone, a wearable device, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely exemplary and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0128] As Figure 7 shown, the electronic device 700 includes a computing unit 701 that can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 702 or a computer program loaded from a storage unit 708 into a random access memory (RAM) 703. In the RAM 703, various programs and data required for the operation of the device 700 can also be stored. The computing unit 701, the ROM 702, and the RAM 703 are connected to each other via a bus 704. An input / output (I / O) interface 705 is also connected to the bus 704.

[0129] A plurality of components in the electronic device 700 are connected to the I / O interface 705, including: an input unit 706, such as a keyboard, a mouse, etc.; an output unit 707, such as various types of displays, speakers, etc.; a storage unit 708, such as a magnetic disk, an optical disk, etc.; and a communication unit 709, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 709 allows the electronic device 700 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.

[0130] The computing unit 701 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 701 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 701 executes the various methods and processes described above, such as the vehicle control method based on the local map. For example, in some embodiments, the vehicle control method based on the local map can be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as the storage unit 708. In some embodiments, part or all of the computer program can be loaded and / or installed onto the electronic device 700 via the ROM 702 and / or the communication unit 709. When the computer program is loaded into the RAM 703 and executed by the computing unit 701, one or more steps of the vehicle control method based on the local map described above can be executed. Alternatively, in other embodiments, the computing unit 701 can be configured to execute the vehicle control method based on the local map in any other suitable manner (e.g., by means of firmware).

[0131] Various embodiments of the systems and techniques described above in this document can be implemented in digital electronic circuitry, integrated circuit systems, field-programmable gate arrays (FPGA), application-specific integrated circuits (ASIC), application-specific standard products (ASSP), system-on-a-chip systems (SOC), complex programmable logic devices (CPLD), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include: being implemented in one or more computer programs, which can be executed and / or interpreted on a programmable system including at least one programmable processor, the programmable processor can be a special or general programmable processor, can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit the data and instructions to the storage system, the at least one input device, and the at least one output device.

[0132] The program code for implementing the methods of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when the program code is executed by the processor or controller, the functions / operations specified in the flowcharts and / or block diagrams are implemented. The program code can be executed entirely on the machine, partially on the machine, as an independent software package partially on the machine and partially on a remote machine, or entirely on a remote machine or server.

[0133] In the context of this disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in connection with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of a machine-readable storage medium would include an electrical connection based on one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0134] To provide for interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user can provide input to the computer. Other kinds of devices can also be used to provide for interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic, speech, or tactile input).

[0135] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer having a graphical user interface or a web browser through which the user can interact with an implementation of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), and the Internet.

[0136] A computer system can include a client and a server. The client and the server are generally remote from each other and typically interact through a communication network. The client-server relationship is generated by computer programs running on the respective computers and having a client-server relationship to each other. The server can be a cloud server, a server of a distributed system, or a server incorporating a blockchain.

[0137] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in a different order, as long as the desired results of the technical solution disclosed in this disclosure can be achieved, and no limitation is imposed herein.

[0138] The above specific embodiments do not constitute a limitation on the protection scope of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub - combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure shall be included within the protection scope of this disclosure.

Claims

1. A vehicle control method based on a local map, the method comprises: During the driving process of the vehicle, collecting the positioning information and perception information of the vehicle; The perception information includes lane line information and road boundary information of the current driving area of the vehicle; Generating local map data of the current driving area according to the positioning information and the perception information; Controlling the vehicle according to the local map data; The method further comprises: Obtaining the high-precision map data of the current driving area preset; Detecting whether the high-precision map data and the real scene of the current driving area are consistent according to the positioning information and the perception information; When the high-precision map data and the real scene of the current driving area are consistent, controlling the vehicle according to the high-precision map data; The controlling the vehicle according to the local map data includes: When the high-precision map data and the real scene of the current driving area are inconsistent, or the high-precision map data does not exist, controlling the vehicle according to the local map data.

2. The method according to claim 1, wherein the vehicle comprises a map engine and at least one control decision-making module; the map engine comprises a service process and a client process; the client process is deployed in the control decision-making module; The generating local map data of the current driving area according to the positioning information and the perception information includes: Generating local map data of the current driving area through the service process according to the positioning information and the perception information; The controlling the vehicle according to the local map data includes: Broadcasting the local map data through the service process; Receiving the local map data through the client process, and loading the local map data into the cache of the client process for the control decision-making module to control the vehicle according to the local map data.

3. The method according to claim 2, wherein the service process broadcasts the local map data in units of frames; The receiving the local map data through the client process and loading the local map data into the cache of the client process comprises: Receiving the local map data through the client process, and when a new frame of local map data is received, clearing the previous frame of local map data in the cache of the client process and loading the new frame of local map data into the cache of the client process.

4. The method according to claim 3, wherein the cache of the client process comprises a first cache and a second cache; The loading the local map data into the cache of the client process comprises: Writing the local map data into the first cache; During the process of writing the local map data into the first cache, locking the first cache and keeping the state of the second cache readable; After writing the local map data into the first cache, synchronizing the data in the first cache to the second cache.

5. The method according to any one of claims 1-4, wherein the vehicle includes a safety mode; the method further comprises: During the driving of the vehicle, when it is detected that the safety mode is triggered, the vehicle is controlled to safely pull over to the side of the road according to the local map data.

6. A vehicle control device based on a local map, the device comprises: A positioning and perception unit, configured to collect the positioning information and perception information of the vehicle during the driving of the vehicle; The perception information includes lane line information and road boundary information of the current driving area of the vehicle; A local mapping unit, configured to generate local map data of the current driving area according to the positioning information and the perception information; A vehicle control unit, configured to control the vehicle according to the local map data; The device further comprises: An acquisition unit, configured to acquire the high-precision map data of the current driving area preset; A detection unit, configured to detect whether the high-precision map data is consistent with the real scene of the current driving area according to the positioning information and the perception information; The vehicle control unit is specifically configured to, when the high-precision map data is consistent with the real scene of the current driving area, control the vehicle according to the high-precision map data; when the high-precision map data is inconsistent with the real scene of the current driving area or the high-precision map data does not exist, control the vehicle according to the local map data.

7. The device according to claim 6, wherein the vehicle includes a map engine and at least one control decision module; the map engine includes a service process and a client process; the client process is deployed in the control decision module; The local mapping unit is configured to generate local map data of the current driving area according to the positioning information and the perception information through the service process; The local mapping unit is further configured to broadcast the local map data through the service process; The vehicle control unit is configured to receive the local map data through the client process and load the local map data into the cache of the client process for the control decision module to control the vehicle according to the local map data.

8. The device according to claim 7, wherein the service process broadcasts the local map data in frames; The vehicle control unit is specifically configured to receive the local map data through the client process, and when a new frame of local map data is received, clear the previous frame of local map data in the cache of the client process and load the new frame of local map data into the cache of the client process.

9. The device according to claim 8, wherein the cache of the client process includes a first cache and a second cache; The vehicle control unit is specifically configured to write the local map data into the first cache; during the process of writing the local map data into the first cache, lock the first cache and keep the state of the second cache as readable; after writing the local map data into the first cache, synchronize the data in the first cache to the second cache.

10. The device according to any one of claims 6-9, wherein the vehicle includes a safety mode; The vehicle control unit is further configured to, during the driving of the vehicle, when it is detected that the safety mode is triggered, control the vehicle to safely pull over to the side of the road according to the local map data.

11. An electronic device, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the method according to any one of claims 1-5.

12. A non-transitory computer-readable storage medium storing computer instructions, the computer instructions being used to cause a computer to execute the method according to any one of claims 1-5.

13. A computer program product comprising a computer program, the computer program, when executed by a processor, implements the method according to any one of claims 1-5.

14. An autonomous driving system or an autonomous driving vehicle, the autonomous driving system or the autonomous driving vehicle comprising the electronic device according to claim 11, for implementing the method according to any one of claims 1-5.

Citation Information

Patent Citations

  • System and method for automatically driving expressway to go up and down ramp

    CN111873995A

  • High-precision map precision detection method based on projection transformation

    CN113962849A