Method and device for creating high-resolution maps
By determining and utilizing key nodes in high definition maps and building high definition maps, the problems of high production costs and large data volume of existing high definition maps are solved, and low-cost and efficient map production and use are achieved, which are suitable for applications such as autonomous driving.
Patent Information
- Application Number
- JP2021531008
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2018-11-29
- Filing Date
- 2019-10-29
- Publication Date
- 2025-03-21
- Estimated Expiration
- 2039-10-29
AI Technical Summary
The production cost of existing high-definition maps is high and the data volume is large, which affects the loading and use efficiency of maps.
By identifying key nodes and building high-definition maps based on these nodes, the complexity and data volume of the map are reduced, and the loading speed and usage efficiency are improved.
It realizes low-cost production and efficient use of high-definition maps, ensures the accuracy and fluency of navigation information, and is suitable for applications such as autonomous driving.
Smart Images

Figure 0007649738000006 
Figure 0007649738000007 
Figure 0007649738000008
Abstract
Description
[Technical field]
[0001] FIELD OF THE DISCLOSURE The embodiments of this application relate to the field of intelligent transportation technology, and in particular to a method and apparatus for creating high definition maps.
[0002] This application claims priority to Chinese Patent Application No. 201811445283.5, entitled “HIGH-DEFINITION MAP BUILDING METHOD AND APPARATUS,” filed with the China Patent Office on November 29, 2018, the entire contents of which are incorporated herein by reference. [Background technology]
[0003] With the increase in the number of vehicles in urban areas, traffic volume is becoming increasingly large. To accommodate the increase in traffic volume, the design of urban roads is becoming more and more complex. A general navigation map can satisfy the simple navigation requirements of users while driving, but a high-definition map based on high-definition road information can provide early warning or implement traffic services such as autonomous driving.
[0004] High-definition maps have higher requirements for information richness and definition. High-definition maps provide more road details. They provide geographic coordinate information of each lane on the road, and can reach centimeter-level definition. High-definition maps can record rich road sign information, such as pedestrian crossings, flyovers, and traffic lights. In intersection areas, high-definition maps also generate multiple lane-level virtual lane boundaries based on real road scenarios, providing accurate and smooth navigation information for vehicles moving at intersections.
[0005] However, the production cost of high-definition maps is currently quite high. The volume of navigation map data may be 1KB per kilometer, while the volume of high-definition map data may be 100MB per kilometer. The difference in data volume is 100,000 times. Therefore, the data volume of high-definition maps is relatively large and may reach the TB level or even higher. This affects the efficiency of loading and using high-definition maps. Summary of the Invention
[0006] The embodiments of this application provide a method and apparatus for creating a high-definition map, and improve the efficiency of using the high-definition map.
[0007] The technical solutions provided in the embodiments of this application are as follows:
[0008] According to a first aspect, a method for creating a high-definition map is provided. The method can be executed by a vehicle or by a cloud server. The steps of the method include: determining a key node, where the key node is used to describe information about a key position related to a change in lane attribute; determining a key node layer based on the position of the key node and the attribute of the key node; and determining a high-definition map based on a navigation map and the key node layer. The navigation map is used to provide road-level navigation information, and the high-definition map is used to provide lane-level navigation information. In this way, compared with the existing high-definition map, the high-definition map provided in this application greatly reduces the complexity of the map, and helps to reduce the data volume of the high-definition map and the cost of creating the high-definition map. This improves the loading speed and usage efficiency of the map while ensuring accuracy.
[0009] In one possible design, the types of key nodes include one or more of the following: lane start and end points, lane change points, or right-turn-only lane start and end points. The key nodes in this application are not limited to these types, and the above is just one example of a type of key nodes. These types of key nodes can indicate key positions of some major driving scenarios to improve the accuracy of the maps provided in this application.
[0010] In one possible design, the lane change points include one or more of the following: divergence points occurring when the number of lanes increases, convergence points occurring when the number of lanes decreases, diverging junctions of exit lanes of a highway, and convergence points of exit lanes of a highway. In this design, some examples of lane change points are given.
[0011] In one possible design, when a lane width change occurs in N consecutive frames captured by an on-board camera and N is greater than a first predetermined threshold, it is determined that the key node is present within the N frames. A geographical coordinate of the key node is determined. The geographical coordinate of the key node is a location of the key node.
[0012] In one possible design, in an initial frame of the N frames, the lane width with lane width change is less than a second predefined threshold. Alternatively, in an end frame of the N frames, the lane width with lane width change is less than a third predefined threshold. For example, the second predefined threshold and the third predefined threshold are the same. Both the second predefined threshold and the third predefined threshold are 1 meter. In this manner, the frames can be filtered.
[0013] In one possible design, the method further includes: determining a first change value and a second change value for any frame in the N frames; and determining that a change in lane width occurs in the any frame if a greater value between the first change value and the second change value is greater than a fourth predefined threshold. The first change value is an absolute value of a difference between a first lane width at a first pixel in the any frame and a second lane width at a second pixel in the any frame. The second change value is an absolute value of a difference between a first lane width at a first pixel in the any frame and a third lane width at a first pixel in a previous frame of the any frame. Alternatively, either the first change value or the second change value may be compared to a fourth predefined threshold to determine that a change in lane width occurs in the any frame. Comparing either the first change value or the second change value to a fourth predefined threshold to determine that a change in lane width occurs in the any frame may roughly select the N frames in a manner of iterative checks.
[0014] In one possible design, the attributes of a key node include one or more of the following: an identifier ID of the key node, an ID of the mesh to which the key node is mapped in the navigation map, an ID of the road to which the key node is mapped in the navigation map, the number of the lane in which the key node is located, or a type of the key node.
[0015] In one possible design, based on the high definition map, a key node having a mapping relationship with the road on which the vehicle is currently traveling is determined. The vehicle travels based on the key node and route planning intention. The traveling vehicle navigates based on the high definition map designed in this embodiment of this application, and can travel in the middle of the road based on the traditional navigation map layer. Compared with the existing high definition map, this avoids the complicated and redundant navigation operation. A detailed navigation solution is provided for lane change scenarios and intersection scenarios. The solution is easy to operate, has high feasibility, and has low requirements for positioning. Lane-level navigation accuracy can be provided to meet the requirements of autonomous driving.
[0016] In one possible design, the key node includes a first key node. The vehicle moving based on the key node and the route planning intent is implemented in the following manner: determining a projection point from the first key node to the road, and moving along a road route based on the distance between the moving position of the vehicle and the projection point and based on the road-level navigation information provided by the navigation map. The positioning requirements of the vehicle are broken down. Global positioning is used in the S direction, and relative positioning is used in the T direction. The satellite positioning is combined with the relative positioning. This helps to reduce the requirements on the autonomous driving positioning system.
[0017] In one possible design, the key node further includes a second key node. The vehicle moving based on the key node and the intention of the route planning is implemented in the following manner: changing lanes based on the intention of the route planning when the moving position of the vehicle reaches the projection point, and moving based on the distance between the moving position of the vehicle and the second key node. The positioning requirements of the vehicle are broken down. Satellite positioning is used in the S direction, and relative positioning is used in the T direction. Satellite positioning is combined with relative positioning. This helps to reduce the requirements on the autonomous driving positioning system.
[0018] In one possible design, the key nodes further include a third key node. The moving of the vehicle based on the key nodes and the route planning intent is performed in the following manner: when it is determined that the moving position of the vehicle has reached the second key node, passing through an intersection based on the route planning intent and virtual lane boundaries. The virtual lane boundaries are determined based on the second key node and the third key node.
[0019] According to a second aspect, a method for applying a high-definition map is provided. The method can be executed by a vehicle. The method is mainly implemented by performing the following steps: determining a key node having a mapping relationship with a road on which the vehicle is currently traveling based on the high-resolution map, where the high-resolution map includes a navigation map and a key node layer, the navigation map is used to provide road-level navigation information, and the key node layer includes the location of the key node and the attribute of the key node; and navigating based on the key node and the intention of route planning. This can improve the loading speed and the efficiency of use of the high-definition map, and promote the application of the high-definition map in autonomous driving.
[0020] In one possible design, the key node includes a first key node. Moving based on the key node and the intention of the route planning is performed in the following manner: determining a projection point from the first key node to a road, and moving along the road route based on the distance between the moving position of the vehicle and the projection point and based on the road-level navigation information provided by the navigation map. The positioning requirements of the vehicle are broken down. Satellite positioning is used in the S direction, and relative positioning is used in the T direction. The satellite positioning is combined with the relative positioning. This helps to reduce the requirements on the autonomous driving positioning system.
[0021] In one possible design, the key node further includes a second key node. Moving based on the key node and the intention of the route planning is implemented in the following manner: changing lanes based on the intention of the route planning when the moving position of the vehicle reaches the projection point, and moving based on the distance between the moving position of the vehicle and the second key node. The positioning requirements of the vehicle are broken down. Satellite positioning is used in the S direction, and relative positioning is used in the T direction. The satellite positioning is combined with the relative positioning. This helps to reduce the requirements on the autonomous driving positioning system.
[0022] In one possible design, the key node further includes a third key node. Navigating based on the key nodes and the route planning intent is performed in the following manner: when it is determined that the moving position of the vehicle has reached the second key node, passing through the intersection based on the route planning intent and the virtual lane boundaries. The virtual lane boundaries are determined by the second key node and the third key node.
[0023] According to a third aspect, there is provided an apparatus for creating a high definition map. The apparatus has the functionality to implement the first aspect or any one of the possible designs according to the first aspect. The functionality may be implemented by hardware or by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the aforementioned functionality.
[0024] Optionally, the high definition mapper may be a chip or integrated circuit.
[0025] In one possible design, where some or all of the functionality is implemented by software, the high definition map creation device includes a processor configured to execute a program, which when executed can cause the high definition map creation device to perform the method of the first aspect or any one of the possible designs of the first aspect. Optionally, a memory is further included and configured to store the program executed by the processor.
[0026] Optionally, the memory may be a physically separate unit or may be integrated with the processor.
[0027] In one possible design, where some or all of the functionality is implemented by software, the high definition map generating device includes a processor, a memory configured to store a program is located outside the high definition map generating device, the processor is connected to the memory via circuits / wires and is configured to read and execute the program stored in the memory.
[0028] According to a fourth aspect, a high definition map application device is provided. The device has a function of implementing the second aspect or any one of the possible designs of the second aspect. The function may be implemented by hardware, or may be implemented by hardware executing corresponding software. The hardware or software includes one or more modules corresponding to the above-mentioned functions. The high definition map application device may also be referred to as a high definition map creation device, with reference to the description of the high definition map application device 1500 / 1600 in one embodiment of this specification.
[0029] Optionally, the high definition map application device may be a chip or integrated circuit.
[0030] In one possible design, when some or all of the functions are implemented by software, the high definition map application device includes a processor configured to execute a program. When the program is executed, the high definition map application device can perform the method in the second aspect or any one of the possible designs of the second aspect. Optionally, a memory is further included and configured to store the program executed by the processor.
[0031] Optionally, the memory may be a physically separate unit or may be integrated with the processor.
[0032] In one possible design, where some or all of the functionality is implemented by software, the high definition map application device includes a processor. A memory configured to store a program is located outside the high definition map application device. The processor is connected to the memory via circuits / wires and is configured to read and execute the program stored in the memory.
[0033] According to a fifth aspect, there is provided a computer storage medium having stored thereon a computer program comprising instructions for performing the method of the previous aspect.
[0034] According to a sixth aspect, there is provided a computer program product comprising instructions, the computer program product being executed on a computer to enable the computer to carry out the method in the above aspect. [Brief description of the drawings]
[0035] [Figure 1] FIG. 1 is a schematic diagram of a high definition map architecture according to one embodiment of the present application. [Figure 2A] FIG. 2a is a schematic diagram of a conventional navigation map in the prior art. [Figure 2B] FIG. 2b is a schematic diagram of a high-definition map according to one embodiment of the present application. [Figure 2C] FIG. 2c is a schematic diagram of a high-resolution map in the prior art. [Diagram 3] FIG. 3 is a schematic flow chart 1 of a method for generating a high-definition map according to one embodiment of the present application. [Figure 4A] FIG. 4a is a schematic diagram of control points of a straight-through virtual lane boundary according to one embodiment of the present application. [Figure 4B] FIG. 4b is a schematic diagram of control points of turning virtual lane lines according to one embodiment of the present application. [Figure 4C] FIG. 4c is a schematic diagram of the implementation effect of a high-definition map according to one embodiment of the present application. [Diagram 5] FIG. 5 is a schematic diagram of a method for determining the location of a lane change point according to one embodiment of the present application. [Figure 6] FIG. 6 is a schematic diagram of calculating the location of a lane change point according to one embodiment of the present application. [Figure 7] FIG. 7 is a schematic diagram of road partitioning according to one embodiment of the present application. [Figure 8A] FIG. 8a is a schematic diagram of a lane change point in the middle of a road according to one embodiment of the present application. [Figure 8B] FIG. 8b is a schematic diagram of lane change points at two ends of a road according to one embodiment of the present application. [Figure 8C] FIG. 8c is a schematic diagram of lane change points and imaginary lane boundaries present at an intersection according to one embodiment of the present application. [Figure 9A] FIG. 9a is a schematic diagram of a key node with reduced amount of lanes according to one embodiment of the present application. [Figure 9B] FIG. 9b is a schematic diagram of a key node with increasing amount of lanes according to one embodiment of the present application. [Figure 9C] FIG. 9c is a schematic diagram of a lane fork point according to one embodiment of the present application. [Figure 9D] FIG. 9d is a schematic diagram of lane convergence points according to one embodiment of the present application. [Figure 9E] FIG. 9e is a schematic diagram of lane starting points according to one embodiment of the present application. [Figure 9F] FIG. 9f is a schematic diagram of lane endings according to one embodiment of the present application. [Figure 9G] FIG. 9g is a schematic diagram of a right-turn exclusive lane start point according to one embodiment of the present application. [Figure 9H] FIG. 9h is a schematic diagram of an end point of a right-turn exclusive lane according to one embodiment of the present application. [Figure 10] FIG. 10 is a schematic flow chart 2 of a method for generating a high-definition map according to one embodiment of the present application. [Figure 11] FIG. 11 is a schematic flow chart of a high definition map application method according to one embodiment of the present application. [Figure 12]FIG. 12 is a schematic application diagram of a high definition map according to one embodiment of the present application. [Figure 13A] FIG. 13a is a schematic application diagram of a high-definition map in phase a according to one embodiment of the present application. [Figure 13B] FIG. 13b is a schematic application diagram of a high-definition map in phase b according to one embodiment of the present application. [Figure 13C] FIG. 13c is a schematic application diagram of a high-definition map in phase c according to one embodiment of the present application. [Figure 14A] FIG. 14a is a schematic flow chart of a high-definition map application method in phase a according to one embodiment of the present application. [Figure 14B] FIG. 14b is a schematic flow chart of a high-definition map application method in phase b according to one embodiment of the present application. [Figure 14C] FIG. 14c is a schematic flow chart of a high definition map application method in phase c according to one embodiment of the present application. [Figure 15] FIG. 15 is a schematic configuration diagram 1 of a high-definition map generating device according to one embodiment of this application. [Figure 16] FIG. 16 is a schematic configuration diagram 2 of a high-definition map generating device according to one embodiment of this application. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0036] Hereinafter, embodiments of the present application will be described in detail with reference to the accompanying drawings.
[0037] The method of creating and applying a high-definition map provided in the embodiments of this application can be applied to an intelligent transportation system. Vehicles in an intelligent transportation system can use the high-definition map to implement transportation services. The transportation services in the embodiments of this application can be various automated driving and assisted driving. For example, route planning and driving risk warning for manual driving. The above transportation services are just one example. The method of creating and applying a high-definition map provided in the embodiments of this application provides technical preparation for rapid service rollout and continuous update of vehicle to x (V2X) communication. For example, V2X is vehicle to vehicle (V2V) communication or vehicle to installation (V2I) communication.
[0038] The method of creating and applying the high definition map provided in the embodiment of this application will be described in detail below.
[0039] As shown in Fig. 1, the high-definition map designed in this embodiment of the present application is a high-definition map with relatively low cost and relatively low complexity, and is constructed by adding a key node layer to a traditional navigation map. To further improve the definition of the map, a virtual lane boundary (virtual lane) layer can be further added to the navigation map.
[0040] FIG. 2a is a schematic diagram of a conventional navigation map. The navigation map is a conventional navigation map. Compared with a high-definition map, the conventional navigation map can only provide road-level navigation information. The navigation map can provide navigation information for users to meet the navigation requirements of driving routes. For example, the navigation map can provide navigation information such as the number of lanes on the current road, speed limit information, turning information, and route planning.
[0041] A key node is a node used to describe key road information or information used to describe important positions of lane attribute changes, such as information in relatively critical scenarios for autonomous driving. Mostly, key nodes exist in intersections or lane change scenarios. The types of key nodes may include, but are not limited to, any one or more of the following: lane start and end points, lane change points, or right-turn-only lane start and end points. Lane start and end points include the start point of a lane and the end point of a lane. Lane start and end points include the start and end points of some lane boundary lines on a road. A lane start point is a point at the start line of a lane, and a lane end point is a point at the end line of a lane. Mostly, in practical applications, the start line of a lane and the end line of the opposite lane are in the same straight line. A lane change point may be a branch point generated by adding a turning lane when some roads approach an intersection, a convergence point generated by reducing one lane when entering a new road through an intersection, or a branch junction of an exit lane of a highway / viaduct or a convergence point of an entrance lane of a highway / viaduct. In conclusion, a lane change point may include, but is not limited to, any one or more of the following: a branch point generated when the number of lanes increases, a convergence point generated when the number of lanes decreases, a branch junction of an exit lane of a highway (and / or viaduct), and a convergence point of an entrance lane of a highway (and / or viaduct). The start and end points of a right-turn exclusive lane include the start intersection point and the end intersection, which are the lane boundary lines (or the extension of the lane boundary lines) of the right-turn exclusive lane, and the two lane boundary lines connected to the right-turn exclusive lane. It should be noted that the meaning of the key node may be extended to a lane information change point in any operating condition. The example of a key node type is merely an example, and the key node type may further include or be other types.This is not a limitation in this application.
[0042] As shown in Fig. 2b, a key node layer is added based on the traditional navigation map. The key nodes are shown with larger solid dots in Fig. 2b. Optionally, a virtual lane boundary layer can be further added to the navigation map to further improve the definition of the map. The virtual lane boundary is used to indicate the driving route in the intersection area, and is a virtual curve connecting the exit lane and the entrance lane at the intersection. The virtual lane boundary can also be considered as the reference track line along which the vehicle travels in the intersection area. The key node layer provides accurate instructions for the key scenarios that the vehicle travels, such as in the intersection change scenario or lane change scenario. Typical intersections include urban crossroads, T-shaped intersections, pentagonal intersections, etc.
[0043] Compared with the existing high-definition map shown in Fig. 2(c), the high-definition map provided in this application greatly reduces the map complexity, data volume, and production cost, which is helpful to improve the efficiency of loading and use on the basis of ensuring the definition.
[0044] As shown in Fig. 3, the detailed steps of the method for creating a high-definition map provided in this application are described as follows: The method for creating a high-definition map provided in this application can be performed by a vehicle or by a cloud server. For example, the vehicle collects information, such as the location and attributes of key nodes, and sends the information to the cloud server. The cloud server determines the key nodes and builds the high-definition map. The method for updating the high-definition map can also be performed by the vehicle or the cloud server.
[0045] S301: A key node is determined.
[0046] Key nodes are used to describe information about key positions of lane attribute changes.
[0047] S302: Determine a key node layer based on the location of the key node and the attribute of the key node.
[0048] Specifically, the location of the key node is the point coordinate value of the key node in the coordinate system of the Global Positioning System (GPS), and is the geographic coordinate of the key node. There are several methods for determining the location of the key node. For example, a manual labeling method can be used to collect the location of each key node. Optionally, the locations of the start and end points of the right-turn exclusive lane and the start and end points of the lane can be determined in this way. In the embodiment of this application, a method for automatically collecting the location of the key node can also be used by combining binocular vision with GPS. This method will be described in detail below.
[0049] The attributes of a key node include one or more of the following: a key node identifier ID (node), a mesh ID in which the key node is mapped in the navigation map, an ID in which the road in which the key node is mapped in the navigation map, a lane number in which the key node is located, or a type of the key node. The attributes of a key node are used to describe the relationship between a key node layer and a conventional navigation map. The attributes of a key node (or attributes of a key node layer) can be shown by Table 1. [Table 1]
[0050] As shown in Table 1, the identifier (node_ID) of the key node is used to indicate the global unique ID of the key node and is used to distinguish between different key nodes. The ID may also be denoted as id. The node_ID is an automatically generated identifier. The mesh identifier (mesh_ID) is used to indicate the ID of the mesh mapped by the key node to the conventional navigation map and is used to distinguish between different meshes. The mesh identifier is used to establish a mapping relationship between the key node and the mesh of the navigation map. The mesh_ID is derived from an attribute of the road route in the conventional navigation map. The mesh is an attribute of the conventional navigation map and is used to determine the position in the navigation map. The road identifier (road_ID) is used to indicate the ID of the road mapped by the key node to the conventional navigation map and is used to distinguish between different roads. The road identifier is used to establish a mapping relationship between the key node and the road of the navigation map. The road_ID is derived from an attribute of the road route in the conventional navigation map. The lane sequence number or lane boundary line sequence number (lane_num) indicates the sequence number of the lane where the key node is located, and is used to distinguish between different lane boundaries. For example, a two-way road includes a forwarding lane and a reverse lane. The sequence number [-n,...,-1] may be used to indicate the nth reverse lane to the 1st reverse lane. [0] may be used to indicate the center lane boundary. The sequence number [1,...,n] may be used to indicate the 1st forward lane to the nth forward lane. For a one-way road, the sequence number [0,...,n] may be used to indicate the 0th forward lane to the nth forward lane. The type of the key node includes key node type 1 (node_type) and key node type 2 (node_type_2).Key node type 1 includes lane change points, lane start and end points, and right-turn exclusive lane start and end points. Different types are indicated by different sequence numbers, index numbers, or IDs. For example, 0 may be used to indicate lane change points. 1 may be used to indicate lane start and end points. 2 may be used to indicate right-turn exclusive lane start and end points. Key node type 2 further refines key node type 1. Different sequence numbers, index numbers, or IDs may be used to further indicate key node type 1. For example, -1 is used to indicate that the subtype of lane change point is that the number of lanes decreases. 1 is used to indicate that the subtype of lane change point is that the number of lanes increases. -1 is used to indicate that the subtype of lane start and end points is lane start. 1 is used to indicate that the subtype of lane start and end points is lane end. -1 is used to indicate that the subtype of the start and end points of the right-turn-only lane is the start of a right-turn-only lane. 1 is used to indicate that the subtype of the start and end points of the right-turn-only lane is the end of a right-turn-only lane. lane_num, node_type, and node_type_2 are obtained when the location of the key node is determined.
[0051] Each attribute of a key node is of type int, which is a function that truncates a value to the nearest integer.
[0052] See Tables 3 and 4 below for example attribute values for key nodes and examples of key node types.
[0053] S303: Determine a high-definition map based on the navigation map and the key node layer.
[0054] The navigation map may be used to provide road-level navigation information. The high definition map may be used to provide lane-level navigation information.
[0055] The IDs of the key nodes are packed based on the positions of the key nodes and the attributes of the key nodes. The key node layer is generated by packing the IDs of the key nodes based on the positions of the key nodes and the attributes of the key nodes, and by combining the self-owned attributes of the key nodes and the mapping relationship or association information between the key nodes and the navigation map layer.
[0056] A key node layer is added to the traditional navigation map layer. After the key node layer is superimposed on the map, the map uses the key node layer to provide higher definition services for vehicles than those of the traditional navigation map. The map is simpler and less complex than existing high definition maps. A virtual lane boundary layer can be further added to further improve the accuracy of the map on which the key node layer is superimposed.
[0057] In most cases, no lane lines are located in the intersection area. The high definition map in this embodiment of the application overlays a virtual lane line layer on the intersection area. The virtual lane lines are used to indicate lane changes that comply with traffic regulations. One end of the virtual lane line is connected to the lane end point of the exit lane, and the other end is connected to the lane start point of the entrance lane. The lane end point and the lane start point are key nodes in the key node layer. In this way, a connection between the virtual lane line layer and the key node layer is established. The virtual lane line is generated based on the lane start point and the lane end point of the key node layer. Optionally, a third order Bessel curve may be used as the virtual lane line, which can make the virtual lane line smoother and make the vehicle move more stably when navigated by the virtual lane line. When the third order Bessel curve is generated, a control point is required. The virtual lane line is a route that guides the vehicle to move in the intersection area. As shown in FIG. 4(a), for a straight virtual lane boundary, the midpoint of the connection line between two key nodes is selected as the control point, and the generated Bessel curve is a straight line. As shown in FIG. 4b, for a turning virtual lane boundary, the intersection point of the extension lines of the entrance lane and exit lane is selected as the control point, and the generated Bessel curve is a smooth curve within the angle included between the two lanes. Of course, the virtual lane boundary may alternatively use another curve type. The above only uses a cubic Bessel curve as an example for illustration.
[0058] The virtual lane boundary layer is generated by packing the IDs of virtual lane boundary lines, and combining the self-owned attributes of virtual lane boundary lines, the association information between virtual lane boundary lines and key nodes, and the mapping relationship between virtual lane boundary lines and navigation map layer. The attributes of the virtual lane boundary line layer are listed in Table 2. [Table 2]
[0059] As shown in Table 2, the virtual lane boundary line ID is a global unique ID of the virtual lane boundary line and can be automatically generated. The s_node_id is used to indicate the ID of the key node associated with the virtual lane boundary line and is the start point of the lane. The p_node_id is used to indicate the ID of the key node associated with the virtual lane boundary line and is the end point of the lane.
[0060] The high-definition map may be stored as a shapefile. A shapefile is an open format for spatial data. A shapefile describes the geometric and attribute features of spatial data and is used to store geographic elements. The shapefile of the key node layer mainly contains information about the key node layer obtained above. The information includes geometric information and attribute information. The geometric information is the spatial coordinates of the key nodes, i.e., the positions of the key nodes. The attribute information is information about the attributes of the key nodes in the key node layer. The shapefile of the virtual lane boundary layer mainly contains information about the virtual lane boundary layer obtained above. The information includes geometric information and attribute information. The geometric information is the spatial coordinates of the control points of the virtual lane boundary. The attribute information is information about the attributes of the virtual lane boundary shown in Table 2.
[0061] In some embodiments of this application, the geospatial data abstraction library (GDAL) may be used to generate shapefiles based on the geographic information (including location) and attribute information of each layer. GDAL is an open source grid spatial data transformation library used for data conversion and processing.
[0062] The final generated shapefile is shown in Fig. 4c, which shows a high-resolution map of a bridge in Shanghai and a zoomed-in local map of the intersection between Road A and Road B. The bottom layer is the traditional navigation map. The solid lines are the key node layer. The lines at the intersection are the virtual lane boundary layer.
[0063] According to one embodiment of this application, a method for automatically collecting the locations of key nodes by combining binocular vision with GPS is described below, which can be used to determine the locations of key nodes.
[0064] The on-board camera captures images frame by frame. If lane width changes occur in N consecutive frames of images in the images captured by the on-board camera and N is greater than a first predefined threshold, it is determined that a key node exists in the N frames of images. The geographic coordinates of the key node are determined. For example, the value of N may be 20. The lane width changes indicate that a lane is about to disappear or a lane is newly added. That is, lane change points, such as convergence points occurring when the number of lanes decreases, branch points occurring when the number of lanes increases, branch junctions of exit lanes of a highway, convergence points of entrance lanes of a highway, etc., appear. The purpose of setting the first predefined threshold is to avoid misjudgment. If N is not greater than the first predefined threshold, the lane width changes currently occurring in the N consecutive frames of images are considered to be misjudgment.
[0065] In an initial frame of an image in the N frames of an image, the lane width with the lane width change is smaller than the second predefined threshold. For example, the second predefined threshold is 1 meter. Alternatively, in an end frame of an image in the N frames of an image, the lane width with the lane width change is smaller than the third predefined threshold. The third predefined threshold may be the same as or different from the second predefined threshold. For example, the third predefined threshold is also set to 1 meter. For example, referring to one application scenario, the lane width change is assumed to be a case where a lane disappears. In an end frame of an image in the N frames of an image, the lane width with the lane width change is smaller than the third predefined threshold. The lane width change is assumed to be a case where a lane is newly added. In an initial frame of an image in the N frames of an image, the lane width with the lane width change is smaller than the second predefined threshold.
[0066] The following method may be used to determine that a lane width change occurs in any frame of an image: A first change value and a second change value are determined for any frame of an image within the N frames of an image. A lane width change is determined to occur in any frame of an image if the greater value between the first change value and the second change value is greater than a fourth predefined threshold. The first change value is an absolute value of a difference between a first lane width at a first pixel in the any frame of an image and a second lane width at a second pixel in the any frame of an image. The second change value is an absolute value of a difference between a first lane width at a first pixel in the any frame of an image and a third lane width at a first pixel in a previous frame of an image of the any frame of an image.
[0067] As shown in Fig. 5, in one possible embodiment, the steps of a method for automatically collecting the locations of key nodes by combining binocular vision with GPS are described below. The following description may be explained with reference to the schematic diagram shown in Fig. 6.
[0068] S501: Initial parameters are set.
[0069] The amount of image frames N is set to zero, where N indicates the amount of frames in which lane width changes occur consecutively.
[0070] S502: Read the binocular image.
[0071] The on-board camera captures images, and sequentially reads the binocular images frame by frame based on the sensor interface of the on-board camera.
[0072] S503: Recognize lane boundary lines.
[0073] The left-eye camera is used as the main camera. The image captured by the main camera is analyzed by machine learning methods to recognize the left and right sidelines of the lane in which the vehicle is located in the image. As shown by the dashed lines in Figure 6, the dashed lines are the left and right sidelines of the lane recognized by the vehicle, i.e., the lane boundary lines.
[0074] S504: Select a current frame, and calculate a first change value |d1| of the change in lane width in the current frame of the image.
[0075] The first change value is an absolute value of the difference between a first lane width at a first pixel in the current frame of images and a second lane width at a second pixel in the current frame of images.
[0076] As shown in FIG. 6, the current frame of the image includes three lanes: lane 1, lane 2, and lane 3. It is assumed that the first pixel is 700px and the second pixel is 600px. For lane 1, lane 2, and lane 3, the horizontal distance of the pixel on the lane boundary line is calculated separately at the vertical coordinates of the image, 700px and 600px. For example, the horizontal distance of the pixel is indicated by S00, S01, S10, S11, S20, and S21. The distance is the distance between the actual ground point corresponding to the pixel in the vehicle coordinate system. The transformation from the image pixel coordinate to the coordinate in the vehicle coordinate system can be obtained by calculating the intrinsic and extrinsic parameters of the camera, which will not be described in detail here. d1=max{S00-S01, S10-S11, S20-S21} indicates the change amount of the maximum lane width change in the current frame. FIG. 6 is used as an example, where |d1|=|S2-S21|.
[0077] S505: Calculate a second change value |d2| related to the change in lane width in the current frame compared to that in the previous frame.
[0078] The second change value is an absolute value of the difference between the first lane width at the first pixel in the current frame of image and the third lane width at the first pixel in the previous frame of image related to the current frame of image.
[0079] FIG. 6 is still used as an example. For lane 1, lane 2, and lane 3, the horizontal distances of the pixels on the lane boundary line are S00, S10, and S20 at the first pixel in the current frame of the image. For lane 1, lane 2, and lane 3, it is assumed that the horizontal distances of the pixels on the lane boundary line are S00', S10', and S20' at the first pixel in the previous frame of the image relative to the current frame of the image, i.e., at the vertical coordinate 700px. d2=max{S00'-S00, S10'-S10, S20'-S20} denotes the second change value of the lane width change in the frame before the maximum lane width change relative to the frame after the maximum lane width change. |d2|=|S20'-S20|.
[0080] S504 and S505 may be performed in any order.
[0081] S506: Determine whether a lane width change occurs in the current frame according to the first change value and the second change value.
[0082] If the maximum value of |d1| and |d2| is greater than the fourth predetermined threshold e1, it is determined that a lane width change occurs in the current frame, i.e., the current frame may contain a lane change point.
[0083] For example, the fourth predefined threshold may be twice the width of a standard lane paint boundary line, i.e. e1 = 2 x 0.15m = 0.3m.
[0084] If it is determined that a lane width change occurs in the current frame, N=N+1 is assigned and execution returns to S402. The next frame of image is read and processed in the same manner. If the maximum of |d1| and |d2| is not greater than the fourth predefined threshold e1, execution continues to S507.
[0085] S507: Determine whether the value of N is greater than a first predetermined threshold e2.
[0086] If N is greater than the first predefined threshold e2, it indicates that the amount of frames in which lane width changes occur consecutively is greater than the first predefined threshold. Then, it is determined that a key node exists within N consecutive frames of the image. If N is not greater than the first predefined threshold e2, return to S501 and execute.
[0087] S508: Filter all lanes that exist within N consecutive frames of images and where lane changes may occur.
[0088] If the lane is a newly added lane, the starting distance S20 of the lane in the initial frame in the N frames of the image should be smaller than a second predefined threshold, e.g., smaller than 1m. Otherwise, the lane is filtered out. As shown in FIG. 6, lane 1, lane 2, and lane 3 are filtered out and are not newly added lanes. If the lane is a vanishing lane, the final distance of the lane in the final frame in the N frames of the image should be larger than a third predefined threshold, e.g., larger than 1m. Otherwise, the lane is filtered out. As shown in FIG. 6, lane 1 and lane 2 are filtered out, and lane 3 is a vanishing lane. After filtering, the example shown in FIG. 6 obtains a uniquely selected lane, namely lane 3.
[0089] Information related to the selected lane is obtained, including lane number, lane increments (new lanes being added), and lane decrements (lanes disappearing). The information is stored in the attributes of the key nodes: lane_num, node_type, node_type_2.
[0090] S509: Fit polynomial curves for the left and right lanes based on the lanes where lane width changes occur.
[0091] Figure 6 is used as an example. The pixel coordinates of the left and right lane boundary lines of lane 3 are transformed into actual ground contact points corresponding to pixels in the vehicle coordinate system. Polynomial curve fitting is performed based on these points to obtain two polynomial curves C0 and C1.
[0092] S510: Determine an intersection point P of the two polynomial curves C0 and C1, and obtain the geographic coordinates of the intersection point P.
[0093] The intersection point P is a key node, i.e., a lane change point where the number of lanes decreases. In this way, the position of the key node P and the above attributes, such as lane_num, node_type, and node_type_2 of the key node, are obtained.
[0094] The above is the process of the high definition map creation method provided in this embodiment of this application.
[0095] According to the method for creating a high-definition map provided above, the following further describes the details of the method for creating a high-definition map according to this embodiment of the present application with reference to an application scenario.
[0096] For ease of explanation, in this embodiment of the application, the road area is divided, as shown in Fig. 7. For a general road traffic environment, the road can be divided into three areas: A, B, and C. Area A indicates the center of the road, area B indicates the two ends of the road, and area C indicates the intersection area. The two ends of the road are areas close to the intersection, and can be divided based on actual experience.
[0097] Table 3 shows the road area division shown in FIG. 7, and information such as the attributes of the key nodes and virtual lane boundary lines of each area based on the definitions in Table 1, which are the attributes of the key nodes. [Table 3]
[0098] Table 3 shows examples of the positions and attributes of key nodes P1 to P43. The position of a key node is the coordinate value of the key node in the world coordinate system, including longitude and latitude. That is, the position of the key node. The position of a key node can be determined through the method provided above. For example, the longitude of key node P1 is 121.62375 and the latitude is 31.247183. For P1, the node_id is 99900001, the mesh_id is 10013213, the road_id is 10100012, the lane_num is 3, the node_type is 2, and the node_type_2 is -1. It can be further seen from FIG. 8c that there is a mapping relationship between each virtual lane boundary line and at least two key nodes.
[0099] As mentioned above, the types of key nodes include lane change points, lane start and end points, and right-turn-only lane start and end points. The meanings and schematic diagrams of different types of key nodes are explained below, as shown in Table 3. [Table 4]
[0100] Based on the above description, when the high definition map includes a navigation map layer, a key node layer, and a virtual lane boundary layer, FIG. 10 is a schematic flowchart of a method for creating a high definition map in one optional implementation.
[0101] S1001: A key node is selected.
[0102] S1002: Calculate the position of the key node.
[0103] S1003: Generate attributes of the key node layer.
[0104] S1004: Read out the key nodes of the entrance and exit lanes of the intersection area.
[0105] For example, key nodes are lane starts and ends at intersections.
[0106] S1005: Calculate the control points of the Bessel curve.
[0107] S1006: Generate attributes of the virtual lane boundary layer.
[0108] S1007: A shapefile is generated based on the attributes of the key node layer and the attributes of the virtual lane boundary line layer.
[0109] In conclusion, a method for creating a high-definition map provided in an embodiment of this application is described. In this embodiment of the application, unlike existing high-definition maps, not all lane boundaries on each road are described. For scenarios that require attention to vehicle driving, such as intersections or lane change points, key nodes are selected. The positions and attributes of the key nodes are determined, and the key nodes are embedded into the navigation map. The map can be used to frame the behavior of automatic driving in these special scenarios. Then, the key nodes are used to replace the complete lane boundary information. This helps to reduce the data volume of the map. Furthermore, to address the defect of the lack of information in the intersection navigation map, in this embodiment of this application, a series of virtual lane boundaries are generated based on the moving behavior of the vehicle in compliance with traffic regulations. According to the design of this embodiment of this application, the data volume per kilometer of the high-definition map can be reduced within 1 / 105. Because the data volume is reduced, the manufacturing cost is also reduced.
[0110] According to the method for creating a high-definition map provided above, the following describes a method for applying a high-definition map, as shown in Figure 11. This method can be implemented by a vehicle.
[0111] S1101: Based on the high-definition map, determine key nodes that have a mapping relationship with the road on which the vehicle is currently traveling.
[0112] The high definition map includes a navigation map and a key node layer. The navigation map is used to provide road-level navigation information, and the key node layer includes the locations of key nodes and the attributes of key nodes. For other descriptions of the high definition map, please refer to the above description. Again, it will not be described in detail here.
[0113] S1102: Move based on key nodes and path planning intent.
[0114] The key node may include one or more key nodes. For example, when there are multiple key nodes, the key node may be indicated by a first key node, a second key node, etc. In detail, when moving normally in the center of the road, the vehicle moves mostly smoothly in one lane, except for occasional lane changes. In this phase, a conventional navigation map may be used for navigation. A projected point from the first key node to the road is determined. The vehicle moves along the road path based on the distance between the moving position of the vehicle and the projected point and based on the road-level navigation information provided from the navigation map. When moving near an intersection, the vehicle may change lanes based on the key node layer. In detail, when the moving position of the vehicle reaches the projected point, the vehicle changes lanes based on the route planning intention. Then, the vehicle passes through the intersection based on the key node and the virtual lane boundary line. In detail, the vehicle moves based on the distance between the moving position of the vehicle and the second key node. When it is determined that the moving position of the vehicle reaches the second key node, the vehicle passes through the intersection based on the path planning intent and the virtual lane boundary line, the virtual lane boundary line being determined by the second key node and the third key node.
[0115] With reference to application scenarios, the following further describes in detail how to apply the high definition maps provided in this application.
[0116] The high definition map can be applied to autonomous driving scenarios. Figure 12 is a schematic diagram of a process by which an autonomous vehicle passes through an intersection by using a high definition map.
[0117] Based on the road region division shown in FIG. 7, the road can be divided into three regions: A, B, and C. Table 3 shows the attributes of key nodes in the three regions. Accordingly, the vehicle passing through the road shown in FIG. 12 can be divided into three phases: phase a, phase b, and phase c. Phase a is the phase in which the vehicle normally moves through region A, i.e., the central part of the road. Phase b is the phase in which the vehicle moves through region B, i.e., the two ends of the road. Phase c is the phase in which the vehicle moves through region C, i.e., the intersection region. In phase a, the vehicle can smoothly advance on the current road. In phase b, the vehicle can change to the corresponding lane according to the planned route before entering the intersection. In phase c, the vehicle can enter the next road through the intersection. At least one of the above three phases can be pending to be completed on the next road until the destination is reached.
[0118] Below, we break down and explain the process by which the high definition map is applied to the movement, which is shown in Figure 12. This process can be described in three phases: a, b, and c.
[0119] The road coordinate system is first defined: the forward axis is the S axis along the road path of the navigation map, and the T axis is perpendicular to the S axis and points to the left.
[0120] Fig. 13a is a schematic diagram of a navigated vehicle in phase a. With reference to Fig. 13(a) and Fig. 14(a), a method of applying a high-definition map to a vehicle is described as follows.
[0121] S1401a: The vehicle searches whether there is a lane change key node related to the currently traveled road based on the high definition map.
[0122] The vehicle navigates based on the navigation map layer of the high definition map and travels smoothly in phase a. The lane change key node is a key node whose type is lane change point. The attributes of the key node in the key node layer of the high definition map include the road associated with the key node. The vehicle can query whether there is a lane change point related to the road currently traveled by using the high definition map. The current travel position of the vehicle is indicated by V in FIG. 13a. The vehicle queries the high definition map and matches the current travel position with a road path L of the navigation map layer based on the navigation map layer. The road path L is also referred to as road L and is an attribute of the navigation map layer. The lane change point K5 related to the road L is determined based on the road_id of the road L on the high definition map. In particular, the location and attributes of the lane change point K5 are determined. The lane change point K5 corresponds to the first key node. A lane change point means that the vehicle moves from phase a to phase b.
[0123] S1402a: Project the lane change key node onto the road path L, and determine the distance between the currently moving position and the projection point.
[0124] The moment when the vehicle moves to phase b needs to be noted. That is, the distance between the currently moving position and the lane change point K5 needs to be calculated. The lane change point K5 is projected onto the path L to obtain a projection point P. The distance between the currently moving position and the projection point P is calculated to reflect the distance between the currently moving position and the lane change point K5.
[0125] For example, in the coordinate system of S and T axes, the coordinates of lane change point K are x0 and y0, and the linear equation y=kx+b related to the line L in the navigation map layer is known. The calculation method of the coordinates x1 and y1 of the projection point P is as follows:
[0126] The coordinates of the projected point P for the point K5 are obtained. That is, the intersection M of the line l that passes through the point K(x0,y0) and is perpendicular to the line L is obtained. Since the two lines are perpendicular to each other, k'k=-1, and the line l that passes through the point K is y-y1=-k'(x-x0)=-k-1(x-x0). The calculation formula for calculating the intersection of the two lines, that is, the projected coordinate P(x1,y1) of the point K5 on the line L, is given by formula (1).
number
[0127] The distance ds between the current GPS position of the vehicle V and the projection point P is calculated along the S direction.
[0128] If there is no lane change key node related to the currently moving road, by querying the map, all the end key nodes of the currently moving road are obtained. The end key node is a key node whose type is the end point of the lane. These end key nodes are projected onto the road path L. The projection point with the minimum distance between the projection point and the position of the vehicle V in the S direction is used as the reference point. Then, the distance ds between the current GPS position of the vehicle V and the reference point is calculated along the S direction.
[0129] S1403a: Calculate the distance s0 between the current vehicle V and the left road edge L0 of the lane in the T direction.
[0130] Specifically, the distance s0 between the current vehicle V and the left road edge L0 of the lane can be calculated by a millimeter-wave radar.
[0131] By querying the map, the total amount of lanes on the current road is obtained. As shown in Fig. 13(a), there are two lanes on the currently moving road. Based on the road width s recorded in the navigation map, 1 / 2 < s0 / s < 1 is obtained through calculation. Therefore, it is inferred that the current vehicle V is on the second lane on the left.
[0132] S1404a: Recognize the left and right lane boundary lines l3 and l4 of the lane where the vehicle V is currently located, and calculate the distance dt between the current vehicle V and the left lane boundary line through the binocular stereoscopic vision ranging method.
[0133] In this phase, based on the size of ds, the vehicle moves smoothly along the current lane and the measured dt or changes to an adjacent lane according to the information about the lane where the vehicle is placed to determine whether to enter phase b.
[0134] When ds is close to 0, it indicates that vehicle V is entering phase b.
[0135] Fig. 13b is a schematic diagram of a vehicle V navigated in phase b. With reference to Fig. 13(b) and Fig. 14(b), a method of applying a high-definition map to a vehicle is described as follows.
[0136] S1401b: Change lanes based on vehicle path planning intent.
[0137] The path planning intention includes going straight, turning left, and turning right. The amount of lanes in phase b, the lane in which vehicle V is placed when vehicle V enters phase b, and the lane to-be-entered are determined by querying the map. Based on visual-awareness-based lane boundary recognition, the vehicle is guided to change to the corresponding lane. As shown in FIG. 13(b), by querying the map, it is obtained that there are three lanes in total in phase b. The three lanes are indicated as lane 1, lane 2, and lane 3. Lane 1 is for turning left, lane 2 is for going straight, and lane 3 is for turning right. The current vehicle V (indicated by the solid block) is on lane 3 in phase b at the time of the end of phase a (i.e., moment t0). It is assumed that the vehicle path planning intention is to turn left. The input lane lines l2 and l3 are recognized by vision-based lane line recognition. The vehicle V is guided to cross the two lane lines to reach the position of the vehicle V on lane 1 (indicated by the dashed block in Fig. 13b). When reaching the position indicated by the dashed block, the vehicle V is located at time instant t1.
[0138] S1402b: After the lane change is completed at time t1, obtain an end key node K1 corresponding to the left lane boundary l1 of the lane in which the vehicle V (shown as a dashed block) is located by querying the map, and calculate the distance ds' between the end key node K1 and the GPS position of the vehicle V in the vehicle's moving direction. In addition, the left and right lane boundaries l1 and l2 of the lane in which the vehicle is currently located are visible. The distance dt' between the vehicle V (shown as a dashed block) and the left lane boundary l1 is calculated by binocular stereoscopic ranging.
[0139] S1403b: Vehicle V moves on lane 1 based on ds and dt to lane stop line L, and phase b ends.
[0140] The lane stop line L includes four key nodes that are lane end points. The four key nodes are indicated by K1, K2, K3, and K4 in FIG. 13(b).
[0141] Fig. 13c is a schematic diagram of a vehicle V navigated in phase c. With reference to Fig. 13(c) and Fig. 14(c), a method of applying a high-definition map to a vehicle is described as follows.
[0142] S1401c: At the time of leaving phase b and entering phase c, i.e., at time t0, query the map to obtain the corresponding virtual lane boundary line based on the vehicle's path planning intent and the end key node K1 corresponding to the left lane boundary line of the lane where the vehicle V (solid block) is located before moving out of phase b. For example, as shown in Fig. 13(c), the vehicle's path planning intent is lane 1 after the vehicle turns left. The high-definition map is queried, and the virtual lane boundary line l0 is obtained based on the key node layer and the virtual lane boundary line layer.
[0143] S1402c: Obtain the start key node and the end key node based on the attributes s_node_id and p_node_id of the virtual lane boundary line l0.
[0144] As shown in Fig. 13(c), the start key node is K1 and the end key node is K5. With respect to the spatial coordinates of the control points of the virtual lane boundary line l0, a third-order Bessel curve is generated, and then the Bessel curve between the start point and the end point is discretized to obtain a set of discrete points P = {p1, p2, ..., p9}.
[0145] S1403c: Refer to the positioning of vehicle V and in combination with point set P, guide the vehicle smoothly through the intersection by using a point in point set P as a target point. At time t1 shown in Figure 13(c), the vehicle position is reached and the next road is entered and phase c ends.
[0146] In conclusion, the application method of the high-definition map provided in this embodiment of this application is described. A moving vehicle is navigated based on the high-definition map designed in this embodiment of this application, and can navigate the center of the road based on the traditional navigation map layer. Compared with the existing high-definition map, this avoids the complicated and redundant navigation operation. A detailed navigation solution is provided for lane change scenarios and intersection scenarios. The solution is easy to operate, highly feasible, and has low requirements for positioning. Lane-level navigation accuracy can be provided to meet the requirements of autonomous driving. The positioning requirements of the vehicle are broken down. Global positioning is used in the S direction, and relative positioning is used in the T direction. Satellite positioning is combined with relative positioning, which helps to reduce the requirements in the autonomous driving positioning system. In conclusion, compared with the existing high-definition map, the high-definition map provided in this embodiment of this application reduces the manufacturing cost and data scale, and improves the accuracy and navigation precision compared with the traditional navigation map.
[0147] Based on the same inventive concept as the above-mentioned method embodiment, as shown in Fig. 15, an embodiment of this application further provides a high-definition map generating device 1500. The high-definition map generating device 1500 is configured to perform the method described in the above-mentioned method embodiment. The high-definition map generating device 1500 includes a determining unit 1501 and a generating unit 1502.
[0148] The determining unit 1501 is configured to determine a key node.
[0149] Key nodes are used to describe information about key positions of lane attribute changes.
[0150] The determining unit 1501 is further configured to determine a key node layer based on the location of the key node and the attribute of the key node.
[0151] The generating unit 1502 is configured to determine a high-definition map based on the navigation map and the key node layer.
[0152] The navigation map is used to provide road level navigation information. The high definition map is used to provide lane level navigation information.
[0153] The determination unit 1501 is further configured to determine that a key node exists within N frames of the image when a lane width change occurs in N consecutive frames of the image within the frames captured by the on-board camera and N is greater than a first predefined threshold, and determine the geographic coordinates of the key node.
[0154] The determining unit 1501 is further configured to determine a first change value and a second change value for any frame in the N frames, and determine that a change in lane width occurs in the any frame when a greater value between the first change value and the second change value is greater than a fourth predefined threshold. The first change value is an absolute value of a difference between a first lane width at a first pixel in the any frame and a second lane width at a second pixel in the any frame. The second change value is an absolute value of a difference between a first lane width at a first pixel in the any frame and a third lane width at a first pixel in a previous frame of the any frame.
[0155] The high definition map generating device 1500 further includes a traveling unit 1503. The traveling unit is configured to determine, based on the high definition map, a key node having a mapping relationship with a road on which the vehicle is currently traveling, and travel according to the key node and the intention of the route planning.
[0156] The key nodes include a first key node, and the mobile unit 1503 is configured to determine a projection point from the first key node to a road, and move along the road path based on a distance between the moving position of the vehicle and the projection point and based on road-level navigation information provided by the navigation map.
[0157] The key node further includes a second key node. The moving unit 1503 is configured to change lanes according to the intention of the route plan when the moving position of the vehicle reaches the projection point, and move according to the distance between the moving position of the vehicle and the second key node.
[0158] The key nodes further include a third key node. The mobile unit 1503 is configured to pass through the intersection based on the path planning intent and the virtual lane boundary when it is determined that the moving position of the vehicle has reached the second key node. The virtual lane boundary is determined by the second key node and the third key node.
[0159] The division of the units included in the high definition map generating device 1500 is merely an example, and division of other units or modules may be further performed. And the names of the units are also an example. Each unit may further perform various detailed descriptions in the above-mentioned method embodiments. And the repeated descriptions will not be described again here.
[0160] Based on the same inventive concept as the above-mentioned method embodiment, as shown in FIG. 16, one embodiment of this application further provides a high-definition map generating device 1600. The high-definition map generating device 1600 is configured to execute the method described in the above-mentioned method embodiment. The high-definition map generating device 1600 includes a processor 1601 and a memory 1602. The memory 1602 is configured to store a group of codes, and the processor 1601 is configured to invoke the codes stored in the memory 1602. When the codes are executed, the high-definition map generating device 1600 is capable of executing the method described in the above-mentioned method embodiment.
[0161] The processor 1601 may be a central processing unit (CPU), a network processor (NP), or a combination of a CPU and a NP.
[0162] The processor 1601 may further include a hardware chip. The hardware chip may be an application-specific integrated circuit (ASIC), a programmable logic device (PLD), or a combination thereof. The PLD may be a complex programmable logic device (CPLD), a field programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.
[0163] The memory 1602 may include volatile memory, such as random access memory (RAM). The memory 1602 may also include non-volatile memory, such as flash memory, a hard disk drive (HDD), or a solid-state drive (SSD). The memory 1602 may also include a combination of the aforementioned types of memory.
[0164] Optionally, in one implementation, the high definition map generator 1600 may be a chip or an integrated circuit.
[0165] One embodiment of the present application provides a computer storage medium storing a computer program, the computer program comprising the method provided in any of the method embodiments described above.
[0166] One embodiment of this application provides a computer program product including instructions, which, when executed on a computer, enable the computer to perform the methods provided in the aforementioned method embodiments.
[0167] It should be understood by those skilled in the art that the embodiments of this application may be provided as a method, a system, or a computer program product. Thus, this application may take the form of a hardware-only embodiment, a software-only embodiment, or an embodiment having a combination of software and hardware. Furthermore, this application may take the form of a computer program product embodied in one or more computer usable storage media (including, but not limited to, disk memory, CD-ROM, optical memory, etc.) that contains computer usable program code.
[0168] This application is described with reference to flowcharts and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this application. It should be understood that computer program instructions can be used to implement each process and / or each block in the flowcharts and / or block diagrams, and combinations of processes and / or blocks in the flowcharts and / or block diagrams. These computer program instructions can be provided for a processor of a general purpose computer, a special purpose computer, an embedded processor, or any other programmable data processing apparatus to generate a machine. The instructions executed by the processor of the computer or any other programmable data processing apparatus thus generate an apparatus for implementing the functions in one or more processes in the flowcharts and / or one or more blocks in the block diagrams.
[0169] These computer program instructions may be stored in a computer readable memory that can instruct a computer or any other programmable data processing apparatus to operate in a certain manner. The instructions stored in the computer readable memory thus produce an artifact that includes an instruction apparatus that implements the functions of one or more processes in the flowcharts and / or one or more blocks in the block diagrams.
[0170] These computer program instructions may be loaded onto a computer or other programmable data processing apparatus such that a sequence of operations and steps are executed on the computer or other programmable apparatus, thereby producing a computer-implemented process. Thus, the instructions executed on the computer or other programmable apparatus provide steps for implementing the functions in one or more processes in the flowcharts and / or one or more blocks in the block diagrams.
[0171] Although some preferred embodiments of this application have been described, those skilled in the art can make changes and modifications to these embodiments once they learn the basic inventive concept. Therefore, the following claims are intended to be interpreted as covering the preferred embodiments and all changes and modifications that fall within the scope of this application.
[0172] Obviously, those skilled in the art can make various modifications and changes to the embodiments of this application without departing from the spirit and scope of the embodiments of this application. This application is intended to cover these modifications and changes as long as they fall within the scope of protection defined by the following claims and their equivalent technologies. [Prior art documents] [Patent documents]
[0173] [Patent Document 1] US Patent Publication No. 2015379359 [Patent Document 2] US Patent Publication No. 2016272203
Claims
1. 1. A method for producing a high definition map, comprising the steps of: determining key nodes by a computer mounted on the vehicle for frames captured by the vehicle-mounted camera; the key nodes being information used to describe key positions related to lane changes; determining, by the computer, a key node tier based on the location of the key node and an attribute of the key node; determining, by the computer, a high definition map based on the navigation map and the key node layer; Including, The key nodes include one or more of lane start and end points, lane change points, and dedicated lane start and end points for right turns; The method further comprises: determining that the key node is present within N consecutive frames captured by an on-board camera when a lane width change occurs in the N consecutive frames, where N is greater than a first predetermined threshold; determining the geographic coordinates of said key nodes; Including, method.
2. The lane change point is Branching points that occur when the number of lanes increases, converging points that occur when the number of lanes decreases, branching junctions of exit lanes of a highway, and converging points of entrance lanes of a highway, Including one or more of the following: The method of claim 1.
3. The method further comprises: determining a first change value and a second change value for a frame in the N frames; determining that a change in lane width occurs within a given frame if a greater value between the first change value and the second change value is greater than a fourth predetermined threshold; The first change value is an absolute value of a difference between a first lane width at a vertical coordinate including a first pixel in the arbitrary frame and a second lane width at a vertical coordinate including a second pixel in the arbitrary frame; and The second change value is an absolute value of a difference between a first lane width at a vertical coordinate including a first pixel in the arbitrary frame and a third lane width at a vertical coordinate including the first pixel in a previous frame related to the arbitrary frame. The method of claim 1.
4. The attributes of the key node are: an identifier ID of the key node, an ID of the mesh in which the key node is mapped in the navigation map, an ID of the road in which the key node is mapped in the navigation map, the number of lanes in which the key node is located, and a type of the key node; Including, 4. The method according to claim 1 .
5. The key nodes include a first key node, The key nodes further include a second key node; and The key nodes further include a third key node.
5. The method according to any one of claims 1 to 4.
6. A method of navigating a vehicle, comprising: navigating the vehicle using a high definition map produced by the method of claim 5; the navigation map is used to provide road-level navigation information; and the high definition map is used to provide lane level navigation information; and navigating the vehicle based on the key nodes and a route plan; Including, How to navigate.
7. An apparatus for creating a high definition map, comprising: a determination unit configured to determine key nodes for a frame captured by an on-board camera, The key nodes are information used to describe key positions related to lane changes; The determining unit is further configured to determine a key node layer based on the location of the key node and the attribute of the key node. A decision unit; A creating unit configured to determine a high definition map based on a navigation map and the key node layer; Including, The key nodes include one or more of lane start and end points, lane change points, and dedicated lane start and end points for right turns; The determination unit further comprises: When a lane width change occurs in N consecutive frames captured by an on-board camera, the key node is determined to be present in the N frames, where N is greater than a first predetermined threshold, and determining the geographic coordinates of said key nodes; It is configured as follows: Device.
8. The lane change point is Branching points that occur when the number of lanes increases, converging points that occur when the number of lanes decreases, branching junctions of exit lanes of a highway, and converging points of entrance lanes of a highway, Including one or more of the following:
8. The apparatus of claim 7.
9. The determination unit further comprises: determining a first change value and a second change value for a frame in the N frames; and determining that a change in lane width has occurred in any frame if a greater value between the first change value and the second change value is greater than a fourth predetermined threshold; The first change value is an absolute value of a difference between a first lane width at a vertical coordinate including a first pixel in the arbitrary frame and a second lane width at a vertical coordinate including a second pixel in the arbitrary frame; and The second change value is an absolute value of a difference between a first lane width at a vertical coordinate including a first pixel in the arbitrary frame and a third lane width at a vertical coordinate including the first pixel in a previous frame related to the arbitrary frame.
8. The apparatus of claim 7.
10. The attributes of the key node are: an identifier ID of the key node, an ID of the mesh in which the key node is mapped in the navigation map, an ID of the road in which the key node is mapped in the navigation map, the number of lanes in which the key node is located, and a type of the key node; Including, 10. Apparatus according to any one of claims 7 to 9.
11. The key nodes include a first key node, The key nodes further include a second key node; and The key nodes further include a third key node.
11. Apparatus according to any one of claims 7 to 10.
12. An apparatus for navigating a vehicle, comprising: navigating the vehicle using a high definition map produced by the apparatus of claim 11; the navigation map is used to provide road-level navigation information; and The high definition map is used to provide lane level navigation information; Navigating the vehicle based on the key nodes and the route plan. A navigation device.
13. A computer-readable storage medium, comprising: The computer-readable storage medium stores computer-readable instructions; and When the computer reads and executes the computer readable instructions, the computer is capable of carrying out the method according to any one of claims 1 to 6. A computer readable storage medium.
14. A computer program comprising a plurality of instructions, When a computer reads and executes the instructions, the computer is capable of carrying out the method according to any one of claims 1 to 6. Computer program.
Citation Information
Patent Citations
Navigation device
JP2007071581A
Joint probabilistic modeling and inference of intersection structure
JP2016075905A
Electronic system, travel lane identification system and travel lane identification method
JP2016206868A
Electronic device, branched road detection program and branched road detection method
JP2018146468A
Apparatus and method for recognizing driving lane of vehicle
US20150379359A1