Method, device and electronic equipment for determining lane profile
By extracting reference points from trajectory lines and generating contour points, the problem of low efficiency in lane contour line generation in autonomous driving is solved, achieving more efficient and accurate lane contour line generation and improving the generation efficiency of high-precision maps.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- BEIJING BAIDU NETCOM SCI & TECH CO LTD
- Filing Date
- 2022-12-23
- Publication Date
- 2026-06-05
AI Technical Summary
In the field of autonomous driving, existing technologies struggle to generate lane contour lines efficiently and accurately, especially in mining working faces, resulting in low efficiency in obtaining lane contour lines.
By extracting multiple reference points from the trajectory line based on the distance between each trajectory point, determining the normal of each reference point, and moving a preset distance along the normal direction to generate contour points, the lane contour line is finally generated.
It improves the accuracy and efficiency of lane contour line generation, reduces the difficulty of lane contour line determination, and simplifies the high-precision map generation process.
Smart Images

Figure CN116092028B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of artificial intelligence technology, and in particular to the fields of autonomous driving and high-precision maps, specifically to methods, devices and electronic devices for determining lane contours. Background Technology
[0002] In the field of autonomous driving, lane-related data needs to be collected in advance to ensure vehicles travel accurately within the lanes. However, in mining operations, to reduce the difficulty of collecting lane data, lane lines are determined solely by the vehicle's trajectory. Maintenance personnel then manually draw the lane outline based on this trajectory, resulting in low efficiency in obtaining the lane outline. Summary of the Invention
[0003] This disclosure provides a method, apparatus, and electronic device for determining lane contour lines.
[0004] According to one aspect of this disclosure, a method for determining lane contour lines is provided, comprising:
[0005] Based on the distance between each trajectory point in the trajectory line, multiple reference points are extracted from the trajectory line;
[0006] Determine at least one normal line corresponding to each reference point;
[0007] Each reference point is moved a preset distance along the first and second directions of the corresponding normal to determine at least one set of contour points corresponding to each reference point;
[0008] Generate the lane contour line corresponding to the trajectory line based on at least one set of contour points corresponding to multiple reference points.
[0009] According to another aspect of this disclosure, a lane contour determining device is provided, comprising:
[0010] The acquisition module is used to extract multiple reference points from the trajectory line based on the distance between each trajectory point in the trajectory line;
[0011] The determination module is used to determine at least one normal line corresponding to each reference point;
[0012] The moving module is used to move each reference point a preset distance along the first direction and the second direction of the corresponding normal, respectively, to determine at least one set of contour points corresponding to each reference point;
[0013] The generation module is used to generate the lane contour line corresponding to the trajectory line based on at least one set of contour points corresponding to multiple reference points.
[0014] According to another aspect of this disclosure, an electronic device is provided, comprising:
[0015] At least one processor; and
[0016] A memory that is communicatively connected to at least one processor; wherein,
[0017] The memory stores instructions that can be executed by at least one processor, which enables the at least one processor to perform the methods of the above embodiments.
[0018] According to another aspect of this disclosure, a non-transitory computer-readable storage medium is provided storing computer instructions, wherein the computer instructions are used to cause a computer to perform the method according to the above embodiments.
[0019] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description
[0020] The accompanying drawings are provided to better understand this solution and do not constitute a limitation of this disclosure. Wherein:
[0021] Figure 1 A flowchart illustrating a method for determining lane contour lines provided in an embodiment of this disclosure;
[0022] Figure 2 A flowchart illustrating another method for determining lane contour lines provided in this embodiment of the disclosure;
[0023] Figure 3 A schematic diagram of contour points provided in an embodiment of this disclosure;
[0024] Figure 4 A flowchart illustrating another method for determining lane contour lines provided in this embodiment of the disclosure;
[0025] Figure 5 A flowchart illustrating another method for determining lane contour lines provided in this embodiment of the disclosure;
[0026] Figure 6 A schematic diagram of another lane contour determination device provided in an embodiment of this disclosure;
[0027] Figure 7 This is a block diagram of an electronic device used to determine the lane outline in the embodiments of this disclosure. Detailed Implementation
[0028] The exemplary embodiments of this disclosure are described below with reference to the accompanying drawings, including various details of the embodiments to aid understanding, and should be considered merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications can be made to the embodiments described herein.
[0029] Modifications may be made without departing from the scope and spirit of this disclosure. Similarly, for clarity and brevity, descriptions of well-known functions and structures are omitted in the following five descriptions.
[0030] Artificial intelligence (AI) is the study of using computers to simulate certain human thought processes and intelligent behaviors (such as learning, reasoning, thinking, and planning). It encompasses both hardware and software technologies. AI hardware technologies generally include sensors and dedicated AI chips.
[0031] Technologies such as big data, cloud computing, distributed storage, and big data processing; artificial intelligence software technologies include computer vision, speech recognition, natural language processing, deep learning, and big data.
[0032] Several major directions, including processing technology and knowledge graph technology.
[0033] Automatic train operation refers to train operation where the work performed by the train driver is fully automated and highly centrally controlled. Automatic train operation systems include automatic train wake-up and start-up, automatic sleep mode, and automatic entry, exit, and stopping.
[0034] It features five functions including automatic parking, automatic cleaning, automatic driving, automatic parking, automatic door opening and closing, and automatic fault recovery, and has multiple operating modes such as normal operation, degraded operation, and operation interruption. It achieves full automation.
[0035] Operation can save energy and optimize the reasonable matching of system energy consumption and speed.
[0036] High-definition maps, also known as high-definition maps, generally refer to maps used for autonomous driving assistance. In layman's terms, high-precision maps are maps with higher accuracy and more data dimensions.
[0037] Sub-maps offer higher precision down to the centimeter level, and more data dimensions, including traffic-related static information in addition to road information.
[0038] In this disclosure, a lane contour line corresponding to a trajectory line is generated by using at least one set of contour points corresponding to multiple reference points in the trajectory line, thereby improving the accuracy of the lane contour line and the efficiency of generating the lane contour line.
[0039] The method, apparatus, electronic device, and storage medium for determining lane contour lines according to embodiments of the present disclosure will now be described in detail with reference to the accompanying drawings.
[0040] It should be noted that the lane contour determination method of this disclosure is illustrated by being configured in a lane contour determination device (hereinafter referred to as the determination device). The determination device can be applied to any electronic device so that the electronic device can perform the lane contour determination function.
[0041] Among them, electronic devices can be any device with computing capabilities, such as personal computers (PCs), mobile terminals, etc. Mobile terminals can be hardware devices with various operating systems, touch screens and / or displays, such as mobile phones, tablets, personal digital assistants, wearable devices, etc.
[0042] Figure 1 This is a flowchart illustrating a method for determining lane contour lines according to an embodiment of the present disclosure.
[0043] like Figure 1 As shown, the method includes:
[0044] Step 101: Extract multiple reference points from the trajectory line based on the distance between each trajectory point.
[0045] In this disclosure, the trajectory line can be determined by acquiring trajectory points of a user-driven vehicle on the lane at preset time intervals. One trajectory point corresponds to a location point in the lane, and the location point can be determined by latitude and longitude; therefore, one trajectory point corresponds to a two-dimensional coordinate.
[0046] In this disclosure, multiple reference points can be extracted from the trajectory line based on the distance between each trajectory point. For example, corresponding trajectory points can be extracted from the trajectory line at 10-meter intervals as reference points. Alternatively, a reference point can be extracted every 5 trajectory points in the trajectory line.
[0047] Step 102: Determine at least one normal line corresponding to each reference point.
[0048] In this disclosure, one or more normals can be determined for each reference point. For example, at a relatively straight trajectory line location, one normal can be determined for the reference point. At a relatively curved trajectory line location, multiple normals can be determined for the reference point to increase the number of contour points at the more curved trajectory line location, thereby improving the accuracy of the determined lane contour line.
[0049] In this disclosure, at least one normal line corresponding to a reference point can be determined by rotating the line connecting a reference point and one or more adjacent reference points by 90 degrees.
[0050] Alternatively, the trajectory line can be segmented and fitted to determine the trajectory function corresponding to each reference point in the trajectory line. Then, the tangent lines at the reference points contained in each trajectory function can be determined. Finally, based on the tangent lines corresponding to each reference point, the normal lines of each reference point can be determined.
[0051] Step 103: Move each reference point by a preset distance along the first and second directions of the corresponding normal to determine at least one set of contour points corresponding to each reference point.
[0052] The first and second directions of the normal are the ray directions that divide the normal into two rays starting from the reference point.
[0053] In this disclosure, a set of contour points includes two contour points determined by moving a reference point by a preset distance along a first direction and a second direction along a normal. When the reference point moves along multiple normals, the reference point corresponds to multiple sets of contour points.
[0054] Step 104: Generate the lane contour line corresponding to the trajectory line based on at least one set of contour points corresponding to multiple reference points.
[0055] In this disclosure, one or more contour points on the same side corresponding to each reference point can be connected sequentially to generate two lane contour lines corresponding to the trajectory line.
[0056] Optionally, after generating two lane outlines, their endpoints can be connected to form a closed lane region. Then, a graphics generation tool can be used to generate an irregular image corresponding to the lane region in a preset color, which serves as the base map for the lane region in the high-definition map. This eliminates the need for manual alignment and merging of the lane outlines and the base map, improving the efficiency of high-definition map generation.
[0057] In this disclosure, based on the distance between trajectory points in a trajectory line, multiple reference points are extracted from the trajectory line. At least one normal line is determined for each reference point. Each reference point is then moved a preset distance along the first and second directions of its corresponding normal line to determine at least one set of contour points for each reference point. Subsequently, based on the at least one set of contour points corresponding to each of the multiple reference points, a lane contour line corresponding to the trajectory line is generated. Thus, by automatically generating a lane contour line corresponding to a trajectory line using at least one set of contour points corresponding to multiple reference points, the accuracy and efficiency of lane contour line generation are improved.
[0058] Figure 2 This is a flowchart illustrating a method for determining lane contour lines according to an embodiment of the present disclosure.
[0059] like Figure 2 As shown, the method includes:
[0060] Step 201: Extract multiple reference points from the trajectory line based on the distance between each trajectory point.
[0061] The specific implementation process of step 201 in this disclosure can be found in the detailed description of any embodiment of this disclosure, and will not be repeated here.
[0062] Step 202: Determine at least one reference vector corresponding to the first reference point based on the first coordinates of the first reference point in the trajectory line and the second coordinates of at least one second reference point adjacent to the first reference point.
[0063] In this disclosure, when the first coordinate of the first reference point on the trajectory line is not on the same straight line as the two adjacent second reference points, the first coordinate of the first reference point on the trajectory line can be connected to the coordinates of the two adjacent second reference points respectively to generate two reference vectors corresponding to the first reference point. Then, two normal lines corresponding to the first reference point can be generated based on the two reference vectors, and two sets of contour points corresponding to the first reference point can be generated based on the two normal lines.
[0064] Alternatively, when the first coordinate of the first reference point in the trajectory line is on the same straight line as the two adjacent second reference points, the first coordinate of the first reference point in the trajectory line can be connected with the coordinate point of any adjacent second reference point to generate two reference vectors corresponding to the first reference point.
[0065] Step 203: Rotate each reference vector corresponding to the first reference point by 90° to determine at least one normal line corresponding to the first reference point.
[0066] In this disclosure, each reference vector corresponding to the first reference point can be rotated 90° with the first reference point as the origin, and the straight line containing the rotated reference vector can be determined as the normal line corresponding to the first reference point.
[0067] For example, such as Figure 3 As shown, Figure 3 This is a schematic diagram of the contour points. Figure 3 Let p1, p2, p3, and p4 be reference points. Assume p2 is the first reference point; then p1 and p3 are the two adjacent reference points of p2. Rotate the reference vector formed by p2 and p1 by 90 degrees about p2 as the origin. The line containing vector v21 is one normal to p2. Similarly, rotate the reference vector formed by p2 and p3 by 90 degrees about p2 as the origin. The line containing vector v22 is another normal to p2. Likewise, determine at least one normal for each of the reference points p1, p3, and p4.
[0068] It is understandable that when the first reference point's first coordinate on the trajectory line and its two adjacent second reference points lie on the same straight line, the two reference vectors corresponding to the first reference point, after rotating 90° around the first reference point as the origin, will also lie on a straight line. In this case, there is only one normal line corresponding to the first reference point.
[0069] Step 204: Move each reference point a preset distance along the first and second directions of the corresponding normal to determine at least one set of contour points corresponding to each reference point.
[0070] Step 205: Generate the lane contour line corresponding to the trajectory line based on at least one set of contour points corresponding to multiple reference points.
[0071] The specific implementation process of steps 204-205 in this disclosure can be found in the detailed description of any embodiment of this disclosure, and will not be repeated here.
[0072] In this disclosure, multiple reference points are extracted from the trajectory line based on the distances between trajectory points. Then, at least one reference vector corresponding to the first reference point is determined based on the first coordinates of the first reference point on the trajectory line and the second coordinates of at least one second reference point adjacent to the first reference point. Each reference vector corresponding to the first reference point is rotated by 90° to determine at least one normal line corresponding to the first reference point. Next, each reference point is moved a preset distance along the first and second directions of the corresponding normal line to determine at least one set of contour points corresponding to each reference point. Finally, based on the at least one set of contour points corresponding to the multiple reference points, a lane contour line corresponding to the trajectory line is generated. Therefore, by determining the normal line corresponding to the reference point based only on at least one reference vector corresponding to multiple reference points and moving the first reference trajectory point according to the normal direction, the contour points corresponding to the first reference point can be determined. This improves the accuracy and efficiency of determining the lane contour line while reducing the difficulty of the lane contour line determination method.
[0073] Figure 4 This is a flowchart illustrating a method for determining lane contour lines according to an embodiment of the present disclosure.
[0074] like Figure 4 As shown, the method includes:
[0075] Step 401: Extract multiple reference points from the trajectory line based on the distance between each trajectory point.
[0076] Step 402: Determine at least one reference vector corresponding to the first reference point based on the first coordinates of the first reference point in the trajectory line and the second coordinates of at least one second reference point adjacent to the first reference point.
[0077] Step 403: Rotate each reference vector corresponding to the first reference point by 90° to determine at least one normal line corresponding to the first reference point.
[0078] Step 404: Move each reference point by a preset distance along the first and second directions of the corresponding normal to determine at least one set of contour points corresponding to each reference point.
[0079] The specific implementation process of steps 401-404 in this disclosure can be found in the detailed description of any embodiment of this disclosure, and will not be repeated here.
[0080] Step 405: When any first reference point corresponds to two sets of contour points, determine the lines connecting the two contour points on the same side of the trajectory line in the two sets of contour points corresponding to any first reference point to the contour points on the same side of an adjacent second reference point.
[0081] Step 406: Obtain the intersection point between the two connecting lines.
[0082] Step 407: Determine the intersection point as a contour point corresponding to any reference point.
[0083] In this disclosure, when a first reference point corresponds to two sets of contour points, it is stated that the lane at the location of the first reference point is a curved lane. To improve the accuracy of the lane contour line at the curved lane location, lines can be drawn connecting two contour points on the same side of the trajectory line from the two sets of contour points corresponding to the first reference point, and each contour point is connected to a contour point on the same side of an adjacent second reference point, provided that their normal directions are the same. The intersection of these two lines can then be identified as a contour point corresponding to the first reference point. Alternatively, this intersection point can be used to replace the two contour points on the same side of the intersection point corresponding to the first reference point. This improves the accuracy of the lane contour line.
[0084] For example, such as Figure 3 As shown. Figure 3 Let p2 be the first reference point, p22 and p23 be a set of contour points of p2, and p21 and p24 be another set of contour points of p2, with p21 and p22 located on the same side of p2, and p23 and p24 located on the other side of p2. Therefore, the contour point on the same side corresponding to the second reference point adjacent to p22 is p31, and the contour point on the same side corresponding to the second reference point adjacent to p21 is p11. Thus, the intersection point j21 of the line connecting p21 and p11 and the line connecting p22 and p31 is obtained. Similarly, the intersection point j22 of the line connecting p23 and p34 and the line connecting p24 and p12 is obtained.
[0085] from Figure 3As can be seen, replacing p23 and p24 with j22 and p33 and p34 with j32 as the lane contour points results in a contour line with the same curvature as the trajectory line. This improves the accuracy of determining the lane contour line.
[0086] Step 408: Generate the lane contour line corresponding to the trajectory line based on at least one set of contour points corresponding to multiple reference points.
[0087] The specific implementation process of step 408 in this disclosure can be found in the detailed description of any embodiment of this disclosure, and will not be repeated here.
[0088] In this disclosure, when any first reference point corresponds to two sets of contour points, two contour points on the same side of the trajectory line from the two sets of contour points corresponding to any first reference point are determined, and lines are drawn between each of these two contour points and a contour point on the same side corresponding to an adjacent second reference point. Then, the intersection point of the two lines is obtained, and this intersection point is designated as a contour point corresponding to any reference point. This ensures that the curvature of the generated lane contour line is the same as the curvature of the lane trajectory line, improving the accuracy of the lane contour line.
[0089] Figure 5 This is a flowchart illustrating a method for determining lane contour lines according to an embodiment of the present disclosure.
[0090] like Figure 5 As shown, the method includes:
[0091] Step 501: Extract multiple reference points from the trajectory line based on the distance between each trajectory point.
[0092] Step 502: Determine at least one normal line corresponding to each reference point.
[0093] Step 503: Move each reference point by a preset distance along the first and second directions of the corresponding normal to determine at least one set of contour points corresponding to each reference point.
[0094] The specific implementation process of steps 501-503 in this disclosure can be found in the detailed description of any embodiment of this disclosure, and will not be repeated here.
[0095] Step 504: Determine the radius of the circumcircle corresponding to each of the three adjacent contour points on the same side of the trajectory line.
[0096] In this disclosure, there are no sharp turns in the lanes of the mining face. Therefore, the accuracy of the contour points can be further verified by measuring the curvature between them, which helps ensure the accuracy of the lane contour lines.
[0097] In this disclosure, the radius of the circumcircle corresponding to each of three adjacent contour points on the same side of the trajectory line can be determined based on the coordinates of the contour points. Then, it can be determined whether three adjacent contour points on the circumcircle are abnormal based on the radius of the circumcircle.
[0098] Step 505: If any radius is less than the threshold, highlight the three adjacent contour points corresponding to any radius.
[0099] In this disclosure, if the radius of a certain circumcircle is less than a threshold, it indicates that the lane corresponding to the three contour points on that circumcircle has a large curvature. Therefore, the three contour points on that circumcircle can be marked as abnormal contour points. When displaying lane contour lines in the display interface, the abnormal contour points can be highlighted.
[0100] Step 506: Display reference points and at least one set of contour points corresponding to each reference point according to the preset scaling ratio.
[0101] In this disclosure, reference points and the corresponding contour points for each reference point can be displayed in the editing interface according to a preset scaling ratio. This facilitates user review of the contour points.
[0102] Step 507: If any contour point is detected to have been moved, update the coordinates of any contour point according to the termination position of the move.
[0103] In this disclosure, when a user determines that a certain contour point is incorrect, they can drag and move the contour point to a suitable position in the editing interface. When the determining device detects that the contour point has been moved, it can determine the updated coordinates of the contour point according to the ending position of the movement and a preset scaling ratio, and then update the coordinates of the contour point using the updated coordinates. This further ensures the accuracy of the lane contour lines.
[0104] Optionally, the contour points can be updated, and steps 504-505 can be performed again to allow the user to adjust the contour points.
[0105] Optionally, the lane attribute information may differ for different lane locations. For example, the speed limit for the first 10 meters of a lane may be speed 1, while the speed limit for the last 10 meters may be speed 2. To facilitate setting different lane attribute information for different lane locations, the lane outline can be segmented, and different lane attribute information can be set for each segment.
[0106] In this disclosure, a user can double-click on a contour point in the editing interface to designate that contour point as a breakpoint. Thus, when the determining device detects that the contour point has been triggered, it designates that contour point as the first breakpoint and designates another contour point in the lane contour line opposite to the first breakpoint as the second breakpoint. Then, based on the first and second breakpoints, the lane contour line is divided into two sub-lane contour lines. Next, when a sub-lane contour line is detected as selected and a first control is triggered, the lane attribute information associated with the first control is associated with and stored with that sub-lane contour line.
[0107] The lane attribute information may include lane-related information such as speed limits and travel time. The first control is used to set lane attribute information, and users can input lane attribute information into the first control.
[0108] In addition, users can double-click on multiple contour points to divide the lane contour line into multiple sub-lane contour lines.
[0109] Step 508: Generate the lane contour line corresponding to the trajectory line based on at least one set of contour points corresponding to multiple reference points.
[0110] The specific implementation process of step 508 in this disclosure can be found in the detailed description of any embodiment of this disclosure, and will not be repeated here.
[0111] In this disclosure, after determining at least one set of contour points corresponding to each reference point, the radius of the circumcircle corresponding to each of three adjacent contour points on the same side of the trajectory line can be determined. If any radius is less than a threshold, the three adjacent contour points corresponding to any radius are highlighted. Simultaneously, if any contour point is detected to have been moved, the coordinates of any contour point are updated according to the termination position of the move. This further improves the accuracy of the lane contour line.
[0112] To achieve the above embodiments, this disclosure also proposes a lane contour line determination device.
[0113] Figure 6 This is a schematic diagram of a lane contour determination device provided in an embodiment of the present disclosure.
[0114] like Figure 6 As shown, the lane outline determination device 600 includes: an acquisition module 610, a determination module 620, a movement module 630, and a generation module 640.
[0115] The acquisition module 610 is used to extract multiple reference points from the trajectory line based on the distance between each trajectory point in the trajectory line;
[0116] Module 620 is used to determine at least one normal line corresponding to each reference point;
[0117] The moving module 630 is used to move each reference point a preset distance along the first direction and the second direction of the corresponding normal, respectively, to determine at least one set of contour points corresponding to each reference point;
[0118] The generation module 640 is used to generate the lane contour line corresponding to the trajectory line based on at least one set of contour points corresponding to multiple reference points.
[0119] In one possible implementation of this disclosure, the determining module 620 is used for:
[0120] Based on the first coordinates of the first reference point in the trajectory line and the second coordinates of at least one second reference point adjacent to the first reference point, at least one reference vector corresponding to the first reference point is determined.
[0121] Rotate each reference vector corresponding to the first reference point by 90° to determine at least one normal line corresponding to the first reference point.
[0122] In one possible implementation of this disclosure, the determining module 620 is further configured to:
[0123] In the case where any first reference point corresponds to two sets of contour points, determine the lines connecting the two contour points on the same side of the trajectory line in the two sets of contour points corresponding to any first reference point to the contour points on the same side of an adjacent second reference point.
[0124] Find the intersection point between two connecting lines;
[0125] The intersection point is defined as a contour point corresponding to any reference point.
[0126] In one possible implementation of this disclosure, a display module is further included, used for:
[0127] Determine the radius of the circumcircle corresponding to each of three adjacent contour points located on the same side of the trajectory line;
[0128] If any radius is less than the threshold, the three adjacent contour points corresponding to any radius will be highlighted.
[0129] In one possible implementation of this disclosure, an update module is further included, used for:
[0130] Based on the preset scaling ratio, display reference points and at least one set of contour points corresponding to each reference point;
[0131] If any contour point is detected to have been moved, the coordinates of that contour point are updated according to the final position of the move.
[0132] In one possible implementation of this disclosure, a segmentation module is further included, used for:
[0133] If any contour point is detected to be triggered, that contour point will be designated as the first breakpoint.
[0134] Determine the second breakpoint by identifying another point on the lane outline that is opposite to the first breakpoint.
[0135] Based on the first and second breakpoints, the lane outline is divided into two lane outline segments.
[0136] If any sub-lane outline is selected and the first control is triggered,
[0137] The lane attribute information associated with the first control is associated with and stored along the outline of any sub-lane.
[0138] It should be noted that the explanation of the aforementioned method for determining lane outlines also applies to the apparatus of this embodiment, and therefore will not be repeated here.
[0139] In this disclosure, based on the distance between trajectory points in a trajectory line, multiple reference points are extracted from the trajectory line. At least one normal line is determined for each reference point. Each reference point is then moved a preset distance along the first and second directions of its corresponding normal line to determine at least one set of contour points for each reference point. Subsequently, based on the at least one set of contour points corresponding to each of the multiple reference points, a lane contour line corresponding to the trajectory line is generated. Thus, by automatically generating a lane contour line corresponding to a trajectory line using at least one set of contour points corresponding to multiple reference points, the accuracy and efficiency of lane contour line generation are improved.
[0140] According to embodiments of this disclosure, this disclosure also provides an electronic device and a readable storage medium.
[0141] Figure 7 A schematic block diagram of an example electronic device 700 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device may also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.
[0142] like Figure 7As shown, device 700 includes a computing unit 701, which can perform various appropriate actions and processes based on a computer program stored in ROM (Read-Only Memory) 702 or loaded from storage unit 708 into RAM (Random Access Memory) 703. RAM 703 can also store various programs and data required for the operation of device 700. The computing unit 701, ROM 702, and RAM 703 are interconnected via bus 704. I / O (Input / Output) interface 705 is also connected to bus 704. Multiple components in device 700 are connected to I / O interface 705, including: input unit 706, such as a keyboard, mouse, etc.; output unit 707, such as various types of displays, speakers, etc.; storage unit 708, such as a disk, optical disk, etc.; and communication unit 709, such as a network card, modem, wireless transceiver, etc. The communication unit 709 allows the device 700 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0143] The computing unit 701 can be various general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 701 include, but are not limited to, CPUs (Central Processing Units), GPUs (Graphics Processing Units), various special-purpose AI (Artificial Intelligence) computing chips, various computing units running machine learning model algorithms, DSPs (Digital Signal Processors), and any suitable processor, controller, microcontroller, etc. The computing unit 701 performs the various methods and processes described above, such as the lane contour determination method. For example, in some embodiments, the lane contour determination method can be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 708. In some embodiments, part or all of the computer program can be loaded and / or installed on device 700 via ROM 702 and / or communication unit 709. When the computer program is loaded into RAM 703 and executed by the computing unit 701, one or more steps of the lane contour determination method described above can be performed. Alternatively, in other embodiments, the computing unit 701 may be configured to perform a method for determining lane contours by any other suitable means (e.g., by means of firmware).
[0144] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, FPGAs (Field Programmable Gate Arrays), ASICs (Application-Specific Integrated Circuits), ASSPs (Application-Specific Standard Products), SOCs (System-on-Chips), CPLDs (Complex Programmable Logic Devices), computer hardware, firmware, software, and / or combinations thereof. These various implementations may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0145] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0146] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, RAM, ROM, EPROM (Electrically Programmable Read-Only Memory) or flash memory, optical fiber, CD-ROM (Compact Disc Read-Only Memory), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0147] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (Cathode-Ray Tube) or LCD (Liquid Crystal Display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0148] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include LANs (Local Area Networks), WANs (Wide Area Networks), the Internet, and blockchain networks.
[0149] Computer systems can include clients and servers. Clients and servers are generally geographically separated and typically interact via communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. A server can be a cloud server, also known as a cloud computing server or cloud host, a hosting product within the cloud computing service system that addresses the shortcomings of traditional physical hosts and VPS (Virtual Private Server) services, such as high management difficulty and weak business scalability. Servers can also be servers for distributed systems or servers integrated with blockchain technology.
[0150] It should be understood that the various forms of processes shown above can be used to rearrange, add, or delete steps. For example, the steps described in this disclosure can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution disclosed in this disclosure can be achieved, and this is not limited herein.
[0151] The specific embodiments described above do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.
Claims
1. A method for determining a lane outline, the method comprising: Based on the distance between each trajectory point in the trajectory line, multiple reference points are extracted from the trajectory line; Based on the first coordinates of the first reference point in the trajectory line and the second coordinates of at least one second reference point adjacent to the first reference point, at least one reference vector corresponding to the first reference point is determined. Rotate each reference vector corresponding to the first reference point by 90° to determine at least one normal line corresponding to the first reference point. Each reference point is moved a predetermined distance along the first and second directions of the corresponding normal to determine at least one set of contour points corresponding to each reference point; Based on at least one set of contour points corresponding to the plurality of reference points, generate the lane contour line corresponding to the trajectory line; Before generating the lane contour line corresponding to the trajectory line based on at least one set of contour points corresponding to the plurality of reference points, the method further includes: In the case where any first reference point corresponds to two sets of contour points, determine the lines connecting the two contour points on the same side of the trajectory line in the two sets of contour points corresponding to any first reference point to the contour points on the same side of an adjacent second reference point. Obtain the intersection point between the two connecting lines; The intersection point is determined as a contour point corresponding to any of the reference points.
2. The method as described in claim 1, wherein, After determining at least one set of contour points corresponding to each reference point, the method further includes: Determine the radius of the circumcircle corresponding to each of three adjacent contour points located on the same side of the trajectory line; If any radius is less than a threshold, the three adjacent contour points corresponding to that radius will be highlighted.
3. The method as described in claim 2, wherein, After determining at least one set of contour points corresponding to each reference point, the method further includes: According to a preset scaling ratio, the reference point and at least one set of contour points corresponding to each reference point are displayed. If any contour point is detected to have been moved, the coordinates of the contour point are updated according to the final position of the move.
4. The method as described in claim 2, wherein, After generating the lane outline corresponding to the trajectory line, the method further includes: If any contour point is detected to be triggered, that contour point will be identified as the first breakpoint. Determine the second breakpoint by identifying another contour point in the lane contour line that is opposite to the first breakpoint; Based on the first breakpoint and the second breakpoint, the lane outline is divided into two sub-lane outlines. If any sub-lane outline is selected and the first control is triggered, the lane attribute information associated with the first control is associated with and stored with the sub-lane outline.
5. A device for determining a lane outline, the device comprising: The acquisition module is used to extract multiple reference points from the trajectory line based on the distance between each trajectory point in the trajectory line; The determination module is used to determine at least one reference vector corresponding to the first reference point based on the first coordinates of the first reference point in the trajectory line and the second coordinates of at least one second reference point adjacent to the first reference point; and to rotate each reference vector corresponding to the first reference point by 90° to determine at least one normal line corresponding to the first reference point. The moving module is used to move each of the reference points by a preset distance along the first direction and the second direction of the corresponding normal, respectively, to determine at least one set of contour points corresponding to each reference point; The generation module is used to generate the lane contour line corresponding to the trajectory line based on at least one set of contour points corresponding to the plurality of reference points respectively. The determining module is further configured to: In the case where any first reference point corresponds to two sets of contour points, determine the lines connecting the two contour points on the same side of the trajectory line in the two sets of contour points corresponding to any first reference point to the contour points on the same side of an adjacent second reference point. Obtain the intersection point between the two connecting lines; The intersection point is determined as a contour point corresponding to any of the reference points.
6. The apparatus of claim 5, wherein, It also includes a display module, used for: Determine the radius of the circumcircle corresponding to each of three adjacent contour points located on the same side of the trajectory line; If any radius is less than a threshold, the three adjacent contour points corresponding to that radius will be highlighted.
7. The apparatus of claim 6, wherein, It also includes an update module for: According to a preset scaling ratio, the reference point and at least one set of contour points corresponding to each reference point are displayed. If any contour point is detected to have been moved, the coordinates of the contour point are updated according to the final position of the move.
8. The apparatus of claim 6, wherein, It also includes a segmentation module, used for: If any contour point is detected to be triggered, that contour point will be identified as the first breakpoint. Determine the second breakpoint by identifying another contour point in the lane contour line that is opposite to the first breakpoint; Based on the first breakpoint and the second breakpoint, the lane outline is divided into two sub-lane outlines. If any sub-lane outline is selected and the first control is triggered, The lane attribute information associated with the first control is associated with and stored in relation to the outline of any of the sub-lanes.
9. An electronic device, comprising: At least one processor; as well as A memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor to enable the at least one processor to perform the method of any one of claims 1-4.
10. A non-transitory computer-readable storage medium storing computer instructions, wherein, The computer instructions are used to cause the computer to perform the method according to any one of claims 1-4.
11. A computer program product comprising a computer program that, when executed by a processor, implements the method according to any one of claims 1-4.