A lane width determination method, a storage medium, and an electronic device
By identifying the curvature abrupt change points of lanes in electronic maps and simplifying lane width to a linear change, the problem of insufficient lane width information is solved, enabling higher-precision lane width measurement and supporting accurate lane-changing decisions by intelligent driving systems.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- ZHEJIANG GEELY HLDG GRP CO LTD
- Filing Date
- 2023-08-17
- Publication Date
- 2026-07-24
Smart Images

Figure CN117195352B_ABST
Abstract
Description
Technical Field
[0001] This article relates to a method for determining lane width. Background Technology
[0002] Lane width is a fundamental parameter in traffic design, planning and management. With the increasing prevalence of autonomous vehicles, accurately determining lane width has significant theoretical and engineering value.
[0003] For example, in Level 2+ autonomous driving systems, lane width plays a crucial role. Accurate lane width is a prerequisite for the autonomous driving system to determine whether its vehicle can change lanes and whether adjacent vehicles are also changing lanes during lane changes. Based on accurate lane width, the autonomous driving system can make safe decisions and plans for overtaking, lane changes, and other driving maneuvers.
[0004] However, existing maps only provide maximum and minimum lane width information, not lane width information at every location within the lane. Furthermore, lane width information obtained through camera recognition is often too close to the target lane, hindering driver prediction and decision-making. Summary of the Invention
[0005] The technical problem to be solved in this application is how to obtain lane width with high accuracy.
[0006] This application proposes a method for determining lane width, which includes:
[0007] Obtain lane edge and centerline data from the electronic map;
[0008] Identify the point of abrupt curvature change on the centerline;
[0009] Calculate the lane width at each point of curvature abrupt change;
[0010] The lane width between two adjacent curvature abrupt changes is determined based on the lane width at each curvature abrupt change point, wherein the lane width changes linearly along the centerline from one curvature abrupt change point to the other.
[0011] In one illustrative embodiment, the centerline is characterized by a plurality of centerline sampling points arranged sequentially and spaced apart from each other;
[0012] The centerline data includes the curvature of each centerline sampling point and the coordinates of each centerline sampling point.
[0013] In one illustrative embodiment, determining the abrupt curvature change point on the centerline includes:
[0014] The centerline is divided into multiple segments, and each segment contains at least 3 centerline sampling points;
[0015] In one extension direction of the centerline, the centerline sampling point with the largest curvature change compared to the adjacent previous centerline sampling point is taken as the curvature abrupt change point.
[0016] In one illustrative embodiment, determining the abrupt curvature change point on the centerline includes:
[0017] In one extension direction of the centerline, centerline sampling points whose curvature change is greater than or equal to a preset threshold compared to the adjacent previous centerline sampling point are regarded as curvature abrupt change points.
[0018] In one illustrative embodiment, calculating the lane width at each curvature abrupt change point includes:
[0019] Calculate the shortest distance from each curvature abrupt change point to the two edge lines of the lane;
[0020] The shortest distances from each curvature inflection point to the two edge lines of the lane are added together to obtain the lane width at each curvature inflection point.
[0021] In one illustrative embodiment, each edge line is characterized by a plurality of edge line sampling points arranged sequentially and spaced apart from each other;
[0022] The edge data includes the coordinates of each edge sampling point.
[0023] In one illustrative embodiment, calculating the shortest distance from each curvature abrupt change point to the two edge lines of the lane includes:
[0024] Calculate the minimum distance from the curvature abrupt change point to the line segment with each pair of adjacent edge sampling points as endpoints in the first edge of the lane. Take the minimum value of these minimum distances as the shortest distance from the curvature abrupt change point to the first edge. Repeat this step until the shortest distance from all curvature abrupt change points to the first edge has been calculated.
[0025] Calculate the minimum distance from the curvature abrupt change point to the line segment with each pair of adjacent edge sampling points as endpoints in the second edge of the lane. Take the minimum value of these minimum distances as the shortest distance from the curvature abrupt change point to the second edge. Repeat this step until the shortest distance from all curvature abrupt change points to the second edge has been calculated.
[0026] In one illustrative embodiment, the two adjacent edge sampling points are the minimum distance from the endpoint of the line segment to the point of curvature abrupt change, including:
[0027] Based on the coordinates of two adjacent edge sampling points and the coordinates of the curvature change point, determine whether the foot of the perpendicular from the curvature change point to the line passing through the two adjacent edge sampling points lies on the line segment with the two adjacent edge sampling points as endpoints;
[0028] When the foot of the perpendicular lies on the line segment with the two adjacent edge sampling points as endpoints, the distance from the curvature change point to the straight line with the two adjacent edge sampling points is taken as the minimum distance from the line segment with the two adjacent edge sampling points as endpoints to the curvature change point.
[0029] When the foot of the perpendicular is outside the line segment with the two adjacent edge sampling points as endpoints, the minimum distance from the curvature change point to the two adjacent edge sampling points is taken as the minimum distance from the line segment with the two adjacent edge sampling points as endpoints to the curvature change point.
[0030] This application proposes a computer-readable storage medium having a computer program stored thereon, characterized in that the computer program, when executed by a processor, implements the determination method described above.
[0031] This application proposes an electronic device, characterized in that it comprises:
[0032] Processor; and
[0033] Memory for storing the executable instructions of the processor;
[0034] The processor is configured to perform the determination method described above by executing the executable instructions.
[0035] The lane is divided into multiple segments based on the curvature abrupt change points, with one lane segment between each pair of adjacent curvature abrupt change points. The change in lane width between each pair of adjacent curvature abrupt change points is simplified to a linear change; that is, the lane width between two adjacent curvature abrupt change points changes linearly from the lane width corresponding to one curvature abrupt change point to the lane width corresponding to another curvature abrupt change point along the extension direction of the centerline.
[0036] Since the lane width varies linearly between two adjacent curvature abrupt changes, the lane width at any given point can be calculated based on the positions of these two points, the lane width at those points, and the position of any point on the centerline between them. Compared to directly calculating the width between the two sidelines of the lane at each point, this significantly reduces the computational load and lowers the performance requirements for computers.
[0037] At the same time, because the calculated lane width is highly accurate, it can provide a basis for lane changing in intelligent driving, avoiding problems such as insufficient lane width causing intelligent driving to be unable to initiate lane changing or lane changing failure. Attached Figure Description
[0038] The accompanying drawings are used to provide an understanding of the technical solutions of this application and constitute a part of the specification. They are used together with the embodiments of this application to explain the technical solutions of this application and do not constitute a limitation on the technical solutions of this application.
[0039] Figure 1 This is a flowchart illustrating a method for determining lane width in an embodiment of this application;
[0040] Figure 2 This is a schematic diagram of a lane in one embodiment of this application;
[0041] Figure 3 This is a schematic diagram of the lane width at the curvature abrupt change point in the embodiments of this application;
[0042] Figure 4 This is a graph showing the relationship between lane width and distance in an embodiment of this application.
[0043] Figure 5 This is a schematic diagram showing the foot of the perpendicular on the line segment in an embodiment of this application;
[0044] Figure 6 This is a schematic diagram showing that the perpendicular foot is not on the line segment in the embodiments of this application;
[0045] Figure 7 This is a schematic diagram of an electronic device according to an embodiment of this application;
[0046] Figure 8 This is a schematic diagram of a computer-readable storage medium according to an embodiment of this application. Detailed Implementation
[0047] like Figure 1 As shown, Figure 1 A flowchart of a method for determining lane width is shown. This method includes the following steps:
[0048] Step S1: Obtain the lane edge data and centerline data from the electronic map, then proceed to step S2;
[0049] An electronic map is a map stored and viewed digitally using computer technology. This electronic map is preferably a high-definition map, such as an EHR (Electronic Horizon Reconstructor) map. The electronic map can be stored in the vehicle's storage. Alternatively, it can be downloaded from an information network, such as the Internet of Things (IoT).
[0050] like Figure 2 As shown, a lane is a section of a road for a single longitudinal row of vehicles. Each road has one or more lanes. Each lane has edge lines 2 along its opposite sides. The distance between two edge lines 2 is the lane width. The lane centerline 1 is a virtual line located in the middle of the lane and extends in the same direction as the lane itself. The electronic map contains edge line data and centerline 1 data for each lane.
[0051] Step S2: Determine the curvature abrupt change point 3 on the centerline 1 of the lane, and proceed to step S3;
[0052] The centerline data includes curvature and position data for centerline 1. That is, the curvature at each point on centerline 1 is a known value, typically provided by the map provider. The curvature of centerline 1 varies with lane width and lane curvature. Curvature abrupt change point 3 on centerline 1 is the point where the curvature changes significantly compared to its neighbors. By iterating through the curvature of each point on centerline 1, the point with the largest change in curvature compared to its neighbors is identified as curvature abrupt change point 3 on centerline 1. The position data of centerline 1 contains the locations of each point on the map. Based on the position data of centerline 1, the location of each curvature abrupt change point 3 on the map can be obtained.
[0053] The shape of the centerline 1 changes with the shape of the lane. The curvature of the centerline 1 reflects a portion of the lane shape changes. Each curvature abrupt change point 3 of the centerline 1 corresponds to abrupt change point in the lane shape, indicating the location where the lane shape changes abruptly. Since the abrupt change points in the lane shape include abrupt change points in the lane width, the abrupt change points in the lane width correspond to at least a portion of the curvature abrupt change points 3 of the centerline 1.
[0054] Step S3: Calculate the lane width at each curvature abrupt change point 3, then proceed to step S4;
[0055] like Figure 3As shown, the lane edge data includes the position data of two edge lines 2, which contains the positions of each point on the two edge lines 2 on the map. Since the positions of each point on the two edge lines 2 on the map are known, the width between the two edge lines 2 at each curvature abrupt change point 3 can be obtained by calculating the sum of the distances from each curvature abrupt change point 3 to the two edge lines 2, based on the position of each curvature abrupt change point 3 on the map (e.g., ...). Figure 3 The width (Min, Mid1, Mid2, Max) is the lane width at the curvature abrupt change point 3.
[0056] Step S4: Determine the lane width between two adjacent curvature abrupt change points 3 based on the lane width at each curvature abrupt change point 3, wherein the lane width changes linearly along the centerline 1 from one curvature abrupt change point 3 to the other.
[0057] like Figure 3 , 4 As shown, the lane is divided into multiple segments with curvature abrupt change point 3 as the boundary, and there is a lane segment between every two adjacent curvature abrupt change points 3. The change in lane width between each pair of adjacent curvature abrupt change points 3 is simplified to a linear change, that is, the lane width of the lane segment between two adjacent curvature abrupt change points 3 changes from the lane width corresponding to one curvature abrupt change point 3 to the lane width corresponding to another curvature abrupt change point 3 in the extension direction along the centerline 1, and this lane width changes linearly.
[0058] One endpoint of centerline 1 can be used as the starting point. The distances from the starting point to each of the two adjacent curvature abrupt change points 3 along centerline 1 can be calculated based on their positions on centerline 1. Using these distances and the corresponding lane widths, a linear function can be established with the distance to the starting point as the independent variable and the lane width as the dependent variable. The lane width corresponding to any point on centerline 1 between the two adjacent curvature abrupt change points 3 can then be calculated using this linear function and the distance from that point to the starting point. Finally, the distance from any point on centerline 1 between the two adjacent curvature abrupt change points 3 to the starting point can be calculated based on the position of that point on centerline 1.
[0059] Therefore, since the lane width between two adjacent curvature abrupt change points 3 changes linearly, the lane width corresponding to the position of any point can be calculated based on the position of the two adjacent curvature abrupt change points 3, the lane width of the two adjacent curvature abrupt change points 3, and the position of any point on the centerline 1 between the two adjacent curvature abrupt change points 3.
[0060] Compared to obtaining the lane width at each point by directly calculating the width between the two side lines 2 of the lane, this method significantly reduces the amount of computation and lowers the requirements for computer performance.
[0061] In an illustrative embodiment, in an electronic map, centerline 1 is represented by a plurality of centerline sampling points arranged sequentially. These sampling points are points on centerline 1, spaced apart from each other. The distance between any two adjacent sampling points is the same along the extension direction of centerline 1. Centerline data includes the curvature of each sampling point and its coordinates. Electronic maps typically establish a map coordinate system, which is a two-dimensional coordinate system, and the coordinates of each centerline sampling point are the coordinates of this map coordinate system.
[0062] Centerline 1 is characterized by multiple sequentially arranged centerline sampling points, which can reduce the amount of data describing the centerline 1 of the lane, reduce the space required for data storage, and speed up the acquisition of centerline data.
[0063] In one illustrative embodiment, step S2 includes:
[0064] Step S21: Divide the centerline 1 into multiple segments, each segment of the centerline 1 containing at least 3 centerline sampling points, and proceed to step S22;
[0065] Divide centerline 1 into segments. The number of centerline sampling points in each segment of centerline 1 can be predetermined. The number of segments of centerline 1 can be obtained by dividing the total number of centerline sampling points in centerline 1 by the number of centerline sampling points in each segment of centerline 1.
[0066] The centerline 1 can be divided into multiple segments, or the number of segments of the centerline 1 can be preset. The total number of sampling points of the centerline 1 can be divided by the number of segments of the centerline 1 to obtain the number of sampling points in each segment of the centerline 1.
[0067] Multiple centerline sampling points in each centerline 1 segment are continuously arranged along centerline 1.
[0068] Step S22: In one extension direction of centerline 1, the centerline sampling point with the largest curvature change compared to the adjacent previous centerline sampling point in each segment of centerline 1 is taken as the curvature abrupt change point 3.
[0069] Set one endpoint of centerline 1 as the starting point and the other endpoint as the ending point. The direction along centerline 1 from the starting point to the ending point is an extension direction of centerline 1.
[0070] A centerline segment 1 has multiple centerline sampling points. For example, this centerline segment 1 has a first centerline sampling point, a second centerline sampling point, a third centerline sampling point, and a fourth centerline sampling point arranged sequentially in one extension direction of centerline 1. The first centerline sampling point, the second centerline sampling point, the third centerline sampling point, and the fourth centerline sampling point correspond to the first curvature, the second curvature, the third curvature, and the fourth curvature, respectively. The absolute value of the difference between the second curvature of the second centerline sampling point and the first curvature of the first centerline sampling point is the curvature change of the second centerline sampling point; the absolute value of the difference between the third curvature of the third centerline sampling point and the second curvature of the second centerline sampling point is the curvature change of the third centerline sampling point; and the absolute value of the difference between the fourth curvature of the fourth centerline sampling point and the third curvature of the third centerline sampling point is the curvature change of the fourth centerline sampling point. By comparing the magnitudes of the curvature changes of the second centerline sampling point, the third centerline sampling point, and the fourth centerline sampling point, the centerline sampling point with the largest curvature change is designated as the curvature abrupt change point 3.
[0071] In this way, a curvature abrupt change point 3 can be selected from each centerline 1 segment. The curvature abrupt change point 3 is distributed relatively evenly on the centerline 1, and there is no need to screen all the points on the centerline 1 to select the curvature abrupt change point 3.
[0072] In another illustrative embodiment, step S2 includes:
[0073] Step S21a: In one extension direction of centerline 1, centerline sampling points whose curvature change is greater than or equal to a preset threshold compared to the adjacent previous centerline sampling point are taken as curvature abrupt change points 3.
[0074] When the absolute value of the difference in curvature between two adjacent centerline sampling points is greater than or equal to a preset threshold, the latter centerline sampling point in one extension direction of centerline 1 among the two adjacent centerline sampling points is taken as curvature abrupt change point 3.
[0075] The preset threshold is greater than 0. The preset threshold can be pre-set by technicians as needed. A larger preset threshold makes it more difficult for the curvature change at the centerline sampling points to meet the condition of being greater than or equal to the preset threshold, resulting in fewer curvature abrupt change points 3 selected on centerline 1, less computational load on the computer, but a higher degree of deviation between the calculated lane width and the actual lane width. Conversely, a smaller preset threshold makes it easier for the curvature change at the centerline sampling points to meet the condition of being greater than or equal to the preset threshold, resulting in more curvature abrupt change points 3 selected on centerline 1, more computational load on the computer, and a smaller degree of deviation between the calculated lane width and the actual lane width. Technicians can determine the preset threshold by balancing the computational load of lane width and the deviation between the calculated and actual lane width values.
[0076] In one illustrative embodiment, step S3, which involves calculating the lane width at each curvature abrupt change point 3, includes:
[0077] Step S31: Calculate the shortest distance from each curvature change point 3 to the two edge lines 2 of the lane;
[0078] Since the lane location data includes the positions of each point on the two edge lines 2 on the map, based on the position of the curvature change point 3 on the map and the position of each point on the edge line 2 on the map, the distance from each point on the edge line 2 to the curvature change point 3 can be obtained. Then, the minimum value among the distances from each point on the edge line 2 to the curvature change point 3 is selected. This minimum value is the shortest distance from the curvature change point 3 to the edge line 2.
[0079] Step S32: Add the shortest distances from each curvature change point 3 to the two edge lines 2 of the lane to obtain the lane width at each curvature change point 3.
[0080] By adding the shortest distance from any curvature inflection point 3 to the first edge line 2 and the shortest distance from the curvature inflection point 3 to the second edge line 2, the lane width at that curvature inflection point 3 can be obtained.
[0081] The deviation between the lane width at curvature inflection point 3 calculated using the above steps and the actual lane width at curvature inflection point 3 is small, the calculation result is accurate, and the amount of calculation is small.
[0082] In an illustrative embodiment, in the electronic map, each edge line 2 is represented by a plurality of edge line sampling points 21 arranged sequentially. Each edge line sampling point 21 is a point on the edge line 2. Adjacent edge line sampling points 21 on the same edge line 2 are spaced apart. Along the extension direction of the edge line 2, the distance between any two adjacent edge line sampling points 21 is the same. The edge line data includes the coordinates of each edge line sampling point 21.
[0083] Each edge line 2 is characterized by multiple edge line sampling points 21 arranged in sequence, which can reduce the amount of data describing the edge line 2 of the lane, reduce the space required for data storage, and speed up the acquisition of edge line data.
[0084] In one illustrative embodiment, step S31 calculates the shortest distance from each curvature abrupt change point 3 to the two edge lines 2 of the lane, including:
[0085] Step S311: Calculate the minimum distance from the line segment with each pair of adjacent edge sampling points 21 as endpoints to the curvature change point 3 in the first edge line 2 of the lane. Take the minimum value of these minimum distances as the shortest distance from the curvature change point 3 to the first edge line 2. Repeat this step until the shortest distance from all curvature change points 3 to the first edge line 2 has been calculated, and proceed to step S312.
[0086] Connecting every two adjacent edge sampling points 21 on the first edge line 2 forms a line segment. Thus, the first edge line 2 can be considered as a line formed by connecting multiple line segments sequentially. After calculating the minimum distances from a curvature abrupt change point 3 to all the line segments that make up the first edge line 2, the minimum value among these minimum distances is the minimum distance from the first edge line 2 to the curvature abrupt change point 3.
[0087] Step S312: Calculate the minimum distance from the line segment with each pair of adjacent edge sampling points 21 as endpoints to the curvature change point 3 in the second edge line 2 of the lane. Take the minimum value of these minimum distances as the shortest distance from the curvature change point 3 to the second edge line 2. Repeat this step until the shortest distance from all curvature change points 3 to the second edge line 2 has been calculated.
[0088] Connecting every two adjacent sampling points 21 on the second edge line 2 forms a line segment. Thus, the second edge line 2 can be considered as a line formed by connecting multiple line segments sequentially. After calculating the minimum distances from a curvature abrupt change point 3 to all the line segments that make up the second edge line 2, the minimum value among these minimum distances is the minimum distance from the second edge line 2 to the curvature abrupt change point 3.
[0089] The first and second edge lines 2 are simplified into multiple small line segments. The shortest distances from the curvature abrupt change point 3 to the first and second edge lines 2 are obtained by finding the minimum distances from these segments to the curvature abrupt change point 3. This eliminates the need to calculate the distance from the curvature abrupt change point 3 to every point on both edge lines 2, significantly reducing computational load, lowering the demands on computer performance, and increasing computational speed.
[0090] In an illustrative embodiment, in steps S311 and S312, the minimum distance from the endpoint of the line segment of two adjacent edge sampling points 21 to the curvature abrupt change point 3 includes:
[0091] Step S3111: Based on the coordinates of the two adjacent edge sampling points 21 and the coordinates of the curvature change point 3, determine whether the foot of the perpendicular line from the curvature change point 3 to the line passing through the two adjacent edge sampling points 21 is on the line segment with the two adjacent edge sampling points 21 as the endpoints. If yes, proceed to step S3112; otherwise, proceed to step S3113.
[0092] The equation of the line passing through the two adjacent edge sampling points 21 is calculated based on their coordinates. Then, the coordinates of the foot of the perpendicular from the curvature abrupt change point 3 to this line can be calculated using this equation and the coordinates of the curvature abrupt change point 3.
[0093] Based on the coordinates of the perpendicular foot and the coordinates of the two edge sampling points 21, it can be determined whether the perpendicular foot lies on the line segment with the two adjacent edge sampling points 21 as endpoints. Specifically, as follows... Figure 5 As shown, when the x-coordinate of the perpendicular foot is within the range between the x-coordinates of the two edge sampling points 21, and the y-coordinate of the perpendicular foot is also within the range between the y-coordinates of the two edge sampling points 21, then the perpendicular foot is considered to be on the line segment with the two adjacent edge sampling points 21 as endpoints. Figure 6 As shown, if the x-coordinate of the perpendicular foot is outside the range between the x-coordinates of the two edge sampling points 21, and / or the y-coordinate of the perpendicular foot is outside the range between the y-coordinates of the two edge sampling points 21, then the perpendicular foot is considered not to be on the line segment with the two adjacent edge sampling points 21 as endpoints.
[0094] Step S3112: Take the distance between the curvature change point 3 and the straight line between the two adjacent edge sampling points 21 as the minimum distance between the line segment with the two adjacent edge sampling points 21 as endpoints and the curvature change point 3.
[0095] The distance from the curvature abrupt change point 3 to the line of the two adjacent edge sampling points 21 can be calculated based on the equation of the line of the line of the two adjacent edge sampling points 21 and the coordinate of the foot of the perpendicular.
[0096] Since the foot of the perpendicular lies on the line segment with the two adjacent edge sampling points 21 as endpoints, the distance from the curvature change point 3 to the straight line of the two adjacent edge sampling points 21 is the minimum distance from the line segment to the curvature change point 3.
[0097] Step S3113: Take the minimum distance from the curvature change point 3 to the two adjacent edge sampling points 21 as the minimum distance from the line segment with the two adjacent edge sampling points 21 as endpoints to the curvature change point 3.
[0098] Based on the coordinates of two adjacent edge sampling points 21 and the coordinates of the curvature abrupt change point 3, the distances from these two edge sampling points 21 to the curvature abrupt change point 3 can be calculated. Comparing these distances, the smaller distance is taken as the minimum distance from the line segment with the two adjacent edge sampling points 21 as endpoints to the curvature abrupt change point 3.
[0099] Since the foot of the perpendicular is outside the line segment with the two adjacent edge sampling points 21 as endpoints, the minimum distance from the curvature change point 3 to the two adjacent edge sampling points 21 is the minimum distance from the line segment to the curvature change point 3.
[0100] The following reference Figure 7 To describe an electronic device 800 according to this embodiment of the present invention. Figure 7 The electronic device 800 shown is merely an example and should not impose any limitations on the functionality and scope of use of the embodiments of the present invention.
[0101] like Figure 7 As shown, the electronic device 800 is manifested in the form of a general-purpose computing device. The components of the electronic device 800 may include, but are not limited to: at least one processing unit 810, at least one storage unit 820, and a bus 830 connecting different system components (including storage unit 820 and processing unit 810).
[0102] The storage unit stores program code that can be executed by the processing unit 810, causing the processing unit 810 to perform the steps described in the "Exemplary Methods" section of this specification according to various exemplary embodiments of the present invention.
[0103] Storage unit 820 may include a readable medium in the form of a volatile storage unit, such as random access memory (RAM) 8201 and / or cache memory 8202, and may further include a read-only memory (ROM) 8203.
[0104] The storage unit 820 may also include a program / utility 8204 having a set (at least one) of program modules 8205, including but not limited to: an operating system, one or more application programs, other program modules, and program data, each or some combination of these examples may include an implementation of a network environment.
[0105] Bus 830 can represent one or more of several types of bus structures, including a memory cell bus or memory cell controller, a peripheral bus, a graphics acceleration port, a processing unit, or a local bus using any of the various bus structures.
[0106] Electronic device 800 can also communicate with one or more external devices 700 (e.g., keyboard, pointing device, Bluetooth device, etc.), and with one or more devices that enable insurance customers to interact with electronic device 800, and / or with any device that enables electronic device 800 to communicate with one or more other computing devices (e.g., router, modem, etc.). This communication can be performed via input / output (I / O) interface 850. Furthermore, electronic device 800 can also communicate with one or more networks (e.g., local area network (LAN), wide area network (WAN), and / or public networks, such as the Internet) via network adapter 860. As shown, network adapter 860 communicates with other modules of electronic device 800 via bus 830. It should be understood that, although not shown in the figures, other hardware and / or software modules can be used in conjunction with electronic device 800, including but not limited to: microcode, device drivers, redundant processing units, external disk drive arrays, RAID systems, tape drives, and data backup storage systems.
[0107] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, terminal device, or network device, etc.) to execute the determination method according to the embodiments of this disclosure.
[0108] In exemplary embodiments of this disclosure, a computer-readable storage medium is also provided, having stored thereon a program product capable of implementing one of the determination methods described above. In some possible implementations, various aspects of the invention can also be implemented as a program product comprising program code that, when run on a terminal device, causes the terminal device to perform the steps of the various exemplary embodiments of the invention described in the "Exemplary Methods" section of this specification.
[0109] refer to Figure 8 As shown, a program product 900 for implementing the above-described determination method according to an embodiment of the present invention is described. It may employ a portable compact disc read-only memory (CD-ROM) and include program code, and may run on a terminal device, such as a personal computer. However, the program product of the present invention is not limited thereto. In this document, the readable storage medium may be any tangible medium containing or storing a program that may be used by or in conjunction with an instruction execution system, apparatus, or device.
[0110] The program product may employ any combination of one or more readable media. A readable medium may be a readable signal medium or a readable storage medium. A readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of readable storage media (a non-exhaustive list) include: an electrical connection having one or more wires, a portable disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0111] Computer-readable signal media may include data signals propagated in baseband or as part of a carrier wave, carrying readable program code. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A readable signal medium may also be any readable medium other than a readable storage medium, capable of sending, propagating, or transmitting programs for use by or in conjunction with an instruction execution system, apparatus, or device.
[0112] The program code contained on the readable medium may be transmitted using any suitable medium, including but not limited to wireless, wired, optical fiber, RF, etc., or any suitable combination thereof.
[0113] Program code for performing the operations of this invention can be written in any combination of one or more programming languages, including object-oriented programming languages such as Java and C++, and conventional procedural programming languages such as C or similar languages. The program code can execute entirely on the insurer's computing device, partially on the insurer's device, as a standalone software package, partially on the insurer's computing device and partially on a remote computing device, or entirely on a remote computing device or server. In cases involving remote computing devices, the remote computing device can be connected to the insurer's computing device via any type of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computing device (e.g., via the Internet using an Internet service provider).
[0114] It should be noted that although several modules or units for the device used to perform actions have been mentioned in the detailed description above, this division is not mandatory. In fact, according to embodiments of this disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.
[0115] Furthermore, although the steps of the method in this disclosure are described in a specific order in the accompanying drawings, this does not require or imply that the steps must be performed in that specific order, or that all the steps shown must be performed to achieve the desired result. Additional or alternative steps may be omitted, multiple steps may be combined into one step, and / or a step may be broken down into multiple steps.
[0116] From the above description of the embodiments, those skilled in the art will readily understand that the exemplary embodiments described herein can be implemented by software or by combining software with necessary hardware. Therefore, the technical solutions according to the embodiments of this disclosure can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (such as a CD-ROM, USB flash drive, external hard drive, etc.) or on a network, including several instructions to cause a computing device (such as a personal computer, server, mobile terminal, or network device, etc.) to execute the determination method according to the embodiments of this disclosure.
[0117] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention disclosed herein. This application is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the appended claims.
[0118] Although the present invention has been disclosed with reference to certain embodiments, various modifications and variations can be made to the described embodiments without departing from the scope and definition of the invention. Therefore, it should be understood that the present invention is not limited to the described embodiments, and its scope of protection should be defined by the content of the appended claims and their equivalent structures and solutions.
Claims
1. A method for determining lane width, characterized in that, include: Obtain lane edge and centerline data from the electronic map; Identify the point of abrupt curvature change on the centerline; Calculate the lane width at each point of curvature abrupt change; The lane width between two adjacent curvature abrupt changes is determined based on the lane width at each curvature abrupt change point, wherein the lane width changes linearly along the centerline from one curvature abrupt change point to the other.
2. The determination method according to claim 1, characterized in that, The centerline is represented by a plurality of centerline sampling points arranged sequentially and spaced apart from each other. The centerline data includes the curvature of each centerline sampling point and the coordinates of each centerline sampling point.
3. The determination method according to claim 2, characterized in that, The determination of the curvature abrupt change point on the center line includes: The centerline is divided into multiple segments, and each segment contains at least 3 centerline sampling points; In one extension direction of the centerline, the centerline sampling point with the largest curvature change compared to the adjacent previous centerline sampling point is taken as the curvature abrupt change point.
4. The determination method according to claim 2, characterized in that, The determination of the curvature abrupt change point on the center line includes: In one extension direction of the centerline, centerline sampling points whose curvature change is greater than or equal to a preset threshold compared to the adjacent previous centerline sampling point are regarded as curvature abrupt change points.
5. The determination method according to any one of claims 1 to 4, characterized in that, The calculation of the lane width at each curvature abrupt change point includes: Calculate the shortest distance from each curvature abrupt change point to the two edge lines of the lane; The shortest distances from each curvature inflection point to the two edge lines of the lane are added together to obtain the lane width at each curvature inflection point.
6. The determination method according to claim 5, characterized in that, Each edge line is represented by multiple edge line sampling points arranged sequentially and spaced apart from each other; The edge data includes the coordinates of each edge sampling point.
7. The determination method according to claim 6, characterized in that, The calculation of the shortest distance from each curvature abrupt change point to the two edge lines of the lane includes: Calculate the minimum distance from the curvature abrupt change point to the line segment with each pair of adjacent edge sampling points as endpoints in the first edge of the lane. Take the minimum value of these minimum distances as the shortest distance from the curvature abrupt change point to the first edge. Repeat this step until the shortest distance from all curvature abrupt change points to the first edge has been calculated. Calculate the minimum distance from the curvature abrupt change point to the line segment with each pair of adjacent edge sampling points as endpoints in the second edge of the lane. Take the minimum value of these minimum distances as the shortest distance from the curvature abrupt change point to the second edge. Repeat this step until the shortest distance from all curvature abrupt change points to the second edge has been calculated.
8. The determination method according to claim 7, characterized in that, The sampling points of two adjacent edge lines are the minimum distances from the endpoints of the line segments to the points of curvature abrupt change, including: Based on the coordinates of two adjacent edge sampling points and the coordinates of the curvature change point, determine whether the foot of the perpendicular from the curvature change point to the line passing through the two adjacent edge sampling points lies on the line segment with the two adjacent edge sampling points as endpoints; When the foot of the perpendicular lies on the line segment with the two adjacent edge sampling points as endpoints, the distance from the curvature change point to the straight line with the two adjacent edge sampling points is taken as the minimum distance from the line segment with the two adjacent edge sampling points as endpoints to the curvature change point. When the foot of the perpendicular is outside the line segment with the two adjacent edge sampling points as endpoints, the minimum distance from the curvature change point to the two adjacent edge sampling points is taken as the minimum distance from the line segment with the two adjacent edge sampling points as endpoints to the curvature change point.
9. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the determination method according to any one of claims 1 to 8.
10. An electronic device, characterized in that, include: processor; as well as Memory for storing the executable instructions of the processor; The processor is configured to perform the determination method of any one of claims 1 to 8 by executing the executable instructions.