Verification method, device and equipment of lane-level guidance algorithm, medium and product
By generating and comparing the lane-level guidance algorithm results of the reference version and the iterative version in the guidance engine, the efficiency and accuracy issues of lane-level guidance algorithm verification are solved, and rapid effect evaluation and problem localization of the iterative version are realized.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- ALIBABA (CHINA) CO LTD
- Filing Date
- 2022-11-29
- Publication Date
- 2026-05-12
AI Technical Summary
Existing technologies cannot effectively verify complex lane-level guidance algorithms, especially in urban ordinary road scenarios. After lane-level guidance algorithms are updated and iterated, it is difficult to quickly and accurately determine whether they have achieved the expected results. Furthermore, troubleshooting is difficult and costly.
By acquiring the starting point location, ending point location, and guidance use cases, the guidance engine generates results based on the reference version and iterative version of the lane-level guidance algorithm, and compares them to obtain differences as verification results, including voice broadcast, guidance surface information, anomaly information, and vector data comparison.
It enables rapid and accurate verification of lane-level guidance algorithms, can determine whether iterative versions have achieved the expected results, and can quickly pinpoint the cause of problems, thus improving the efficiency and accuracy of verification.
Smart Images

Figure CN115855059B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of navigation technology, and in particular to a verification method, apparatus, device, medium, and product for a lane-level guidance algorithm. Background Technology
[0002] Lane-level guidance algorithms are used to provide lane guidance to users, clearly informing them of lane selection and lane changes to avoid problems such as insufficient time for temporary lane changes. Currently, lane-level guidance algorithms are applied in relatively simple scenarios such as highways and urban expressways. However, with business development and the needs of a large number of users, lane-level guidance services need to expand to ordinary urban roads. This brings with it more complex guidance scenarios and increasingly complex lane-level guidance algorithms. In particular, lane-level guidance algorithms are constantly being updated and iterated, and each update and iteration requires validation. Therefore, how to validate increasingly complex lane-level guidance algorithms is a technical problem that needs to be solved. Summary of the Invention
[0003] To address the aforementioned technical problems, this disclosure provides a method, apparatus, device, medium, and product for verifying lane-level guidance algorithms.
[0004] A first aspect of this disclosure provides a verification method for a lane-level guidance algorithm, comprising: acquiring a first starting position, a first ending position, and a guidance use case; inputting the first starting position, the first ending position, and the guidance use case into a guidance engine, so that the guidance engine generates a first guidance result based on a reference version of a first lane-level guidance algorithm, and generates a second guidance result based on an iterative version of a second lane-level guidance algorithm; comparing the first guidance result and the second guidance result to obtain a first difference between the second guidance result and the first guidance result, and using the first difference as a first verification result for the second lane-level guidance algorithm.
[0005] A second aspect of this disclosure provides a verification apparatus for a lane-level guidance algorithm, the apparatus comprising:
[0006] The first acquisition module is used to acquire the first starting point position, the first ending point position, and the guiding test case.
[0007] The input module is used to input the first starting point position, the first ending point position, and the guidance use case into the guidance engine, so that the guidance engine generates a first guidance result based on the reference version of the first lane-level guidance algorithm and generates a second guidance result based on the iterative version of the second lane-level guidance algorithm.
[0008] The first comparison module is used to compare the first guidance result and the second guidance result to obtain the first difference between the second guidance result and the first guidance result, and to use the first difference as the first verification result for the second lane-level guidance algorithm.
[0009] A third aspect of this disclosure provides a computer device comprising a memory and a processor, wherein the memory stores a computer program that, when executed by the processor, can implement the method of the first aspect described above.
[0010] A fourth aspect of this disclosure provides a computer program product stored in a storage medium, which, when run, can implement the method of the first aspect described above.
[0011] A fifth aspect of this disclosure provides a computer-readable storage medium storing a computer program that, when executed, can implement the method of the first aspect described above.
[0012] The technical solution provided in this disclosure has the following advantages compared with the prior art:
[0013] In this embodiment, by inputting the obtained first starting point position, first ending point position, and guidance use case into the guidance engine, the guidance engine generates a first guidance result based on a reference version of the first lane-level guidance algorithm and a second guidance result based on an iterative version of the second lane-level guidance algorithm. By comparing the second guidance result with the first guidance result, the difference between the second lane-level guidance algorithm and the first lane-level guidance algorithm in the output result can be quickly and accurately determined. This difference can then be used as a verification result to accurately determine whether the iterative second lane-level guidance algorithm has achieved the expected improvement effect, thereby realizing a fast and effective verification of the lane-level guidance algorithm. Attached Figure Description
[0014] The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure.
[0015] To more clearly illustrate the technical solutions in the embodiments of this disclosure or the prior art, the accompanying drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0016] Figure 1 This is a schematic diagram of a verification scenario provided by an embodiment of this disclosure;
[0017] Figure 2 This is a flowchart of a verification method for a lane-level guidance algorithm provided in an embodiment of this disclosure;
[0018] Figure 3 This is a flowchart illustrating a method for obtaining boot cases from a full-scenario boot case database, as provided in this embodiment of the disclosure.
[0019] Figure 4 This is a schematic diagram of a user interface provided in an embodiment of this disclosure;
[0020] Figure 5 This is a flowchart of a verification method for another lane-level guidance algorithm provided in this embodiment of the disclosure;
[0021] Figure 6 This is a schematic diagram illustrating a guide surface interruption scenario provided in an embodiment of this disclosure;
[0022] Figure 7 This is a schematic diagram of a case where the guide surface is hollow, as provided in an embodiment of this disclosure;
[0023] Figure 8 This is a schematic diagram illustrating a case where data is missing on both sides of the guide surface, as provided in an embodiment of this disclosure;
[0024] Figure 9 This is a flowchart of a verification method for another lane-level guidance algorithm provided in this embodiment of the disclosure;
[0025] Figure 10 This is a flowchart of a verification method for another lane-level guidance algorithm provided in this embodiment of the disclosure;
[0026] Figure 11 This is a schematic diagram of the structure of a verification device for a lane-level guidance algorithm provided in an embodiment of this disclosure;
[0027] Figure 12 This is a schematic diagram of the structure of a computer device according to an embodiment of this disclosure. Detailed Implementation
[0028] To better understand the above-mentioned objectives, features, and advantages of this disclosure, the solutions disclosed herein will be further described below. It should be noted that, unless otherwise specified, the embodiments and features described herein can be combined with each other.
[0029] Numerous specific details are set forth in the following description in order to provide a full understanding of this disclosure, but this disclosure may also be implemented in other ways different from those described herein; obviously, the embodiments in the specification are only some, and not all, of the embodiments of this disclosure.
[0030] Lane-level navigation technology, also known as high-precision lane-level navigation technology, is a technology that accurately locates a vehicle's lane and guides it to the appropriate lane based on a planned route. Lane-level guidance algorithms are an indispensable and crucial component of lane-level navigation technology. These algorithms typically generate guidance information based on the vehicle's location and the planned route, guiding the vehicle to the appropriate lane. However, as lane-level services expand to ordinary urban roads, more complex guidance scenarios and increasingly complex lane-level guidance algorithms emerge. Furthermore, with continuous iteration and upgrades in business and technology, lane-level guidance algorithms are also constantly being upgraded. This leads to several pressing issues during development. Firstly, the complexity of guidance scenarios increases exponentially after lane-level guidance expands to ordinary urban roads, making it impossible to verify the updated algorithm across all scenarios and thus determine whether it meets expectations. Secondly, the increased complexity of lane-level guidance algorithms makes troubleshooting more difficult and costly, hindering the rapid identification of problems with the algorithm.
[0031] To address the aforementioned business pain points, this disclosure provides a verification scheme for a lane-level guidance algorithm. For example, Figure 1 This is a schematic diagram of a verification scenario provided by an embodiment of this disclosure, such as... Figure 1 As shown, this embodiment of the disclosure inputs the set start position, end position, and guidance use case into the guidance engine, causing the guidance engine to generate a first guidance result based on a reference version of the first lane-level guidance algorithm, and a second guidance result based on an iterative version of the second lane-level guidance algorithm. The difference between the second and second guidance results is obtained by comparing them. Using this difference as a verification result, the differences in output results between the second and first lane-level guidance algorithms can be accurately and intuitively determined, thereby judging whether the iterative second lane-level guidance algorithm has achieved the expected improvement effect. Furthermore, the differences in output results can also quickly and accurately identify problems in the algorithm.
[0032] To better understand the technical solutions of the embodiments of this disclosure, the solutions of the embodiments of this disclosure will be described below in conjunction with exemplary embodiments.
[0033] Example, Figure 2 This is a flowchart illustrating a verification method for a lane-level guidance algorithm provided in an embodiment of this disclosure. This verification method can be executed by a computer device, such as a computer, server, distributed computing node, or other device with computing and processing capabilities. Figure 2 As shown, the verification method for the lane-level guidance algorithm provided in this embodiment may include the following steps:
[0034] Step 201: Obtain the first starting point position, the first ending point position, and the guiding use case.
[0035] The first starting point and the second ending point can be any location set by the user, or they can be two randomly determined locations. In this embodiment, the naming of "first starting point" and "first ending point" is merely to distinguish different starting and ending points and has no other meaning.
[0036] The bootstrap use cases referred to in this disclosure can be understood as a bootstrap rule or bootstrap method, used to enable the bootstrap engine to clearly define how to perform bootstrap. In this disclosure, bootstrap use cases can be obtained from a pre-obtained full-scenario bootstrap use case database. The bootstrap use cases in the full-scenario bootstrap use case database can be obtained through the following method. For example, Figure 3 This is a flowchart illustrating a method for obtaining boot cases from a full-scenario boot case database, as provided in this embodiment of the disclosure. Figure 3 As shown, in one embodiment, the method for generating guide use cases may include steps 301-304:
[0037] Step 301: Obtain the vehicle's log information, which includes the second starting point and second ending point of the historical trip.
[0038] In this embodiment of the disclosure, vehicle log information can be collected by the vehicle and uploaded to a preset storage device. A computer device executing the method of this embodiment can retrieve the log information from the preset storage device. Alternatively, in some embodiments, vehicle log information can also be directly uploaded to the computer device executing the method of this embodiment. In practice, the specific method for obtaining log information can be set as needed, and is not limited to a particular method.
[0039] For example, in some implementations, the log information may include at least the user's historical trip start location (i.e., the second start location) and end location (i.e., the second end location). The term "vehicle" in this disclosure can be understood as a collective term for multiple vehicles; that is, the log information obtained in this disclosure can be the log information of multiple vehicles, and the specific number of log information can be set as needed, without specific limitation here.
[0040] Step 302: Generate the first planned route based on the second starting point and the second ending point.
[0041] The method for generating a first planned route based on a second starting point and a second ending point in this embodiment is similar to related technologies and will not be described in detail here. The first planned route generated based on the second starting point and the second ending point includes information about the road scenes contained in the first planned route, such as the type of road scene (e.g., roundabout, highway, expressway, auxiliary road, road construction, etc., but not limited to the types listed here), the location of the road scene, etc.
[0042] Step 303: Based on high-precision road network data, determine the road scenarios covered by high-precision road network data in the first planned route.
[0043] In practice, some roads in the first planned route may not yet be covered by high-precision road network data, meaning some roads lack corresponding high-precision road network data. Lane-level guidance requires high-precision road network data to function; therefore, when generating lane-level guidance use cases, it is necessary to generate those for roads with available high-precision road network data. Thus, in this embodiment, after generating the first planned route based on the second starting and ending points, it is necessary to determine, based on high-precision road network data, which road scenarios (such as roundabouts, highways, expressways, main roads, and auxiliary roads) in the first planned route are already covered by high-precision road network data (i.e., they already have corresponding high-precision road network data), and which road scenarios are not yet covered by high-precision road network data. Furthermore, corresponding guidance use cases are generated for the road scenarios already covered by high-precision road network data.
[0044] Step 304: Add the guide test cases used in the guided test of the road scenario to the preset full-scenario guide test case database as guide test cases for the road scenario.
[0045] To ensure the reliability and accuracy of navigation, guidance tests are typically conducted for different road scenarios, using one or more guidance test cases. For example, when testing a roundabout, multiple guidance test cases are usually set for each exit of the roundabout. Then, vehicles are guided according to each guidance test case to determine the best-performing one. This best-performing guidance test case can then be designated as the guidance test case for that exit in that scenario.
[0046] After selecting road scenarios covered by high-precision road network data in the first planned route based on high-precision road network data, the guide test cases used in the guided testing process for these road scenarios, such as the best-performing guide test cases, can be added to the full-scenario guide test case database as guide test cases for these road scenarios.
[0047] In this embodiment of the disclosure, by collecting log information from a large number of vehicles and generating full-scenario guidance cases based on the log information from a large number of vehicles and guidance cases in the guidance testing process, full-scenario guidance cases can be provided for the verification of lane-level guidance algorithms, thereby improving the accuracy of lane-level guidance algorithm verification.
[0048] The operation of obtaining bootstrap test cases in step 201 can be understood as obtaining bootstrap test cases for all scenarios or user-specified bootstrap test cases from a pre-generated full-scenario bootstrap test case database, such as obtaining typical scenarios that are prone to bootstrap errors. Alternatively, it can be based on the second planned route between the first starting point and the first ending point, automatically filtering from the pre-established full-scenario bootstrap test case database to obtain bootstrap test cases that match the road scenarios (such as ring roads, highways, main roads, auxiliary roads, etc., but not limited to the scenarios listed here) included in the second planned route. Or, in some other implementations, bootstrap test cases can be obtained randomly.
[0049] In other words, in the embodiments of this disclosure, the guidance use case obtained in step 201 can be one or more. When multiple guidance use cases are obtained, different guidance use cases can correspond to different road scenarios.
[0050] For example, Figure 4 This is a schematic diagram of a user interface provided in an embodiment of this disclosure, such as... Figure 4 As shown, in one embodiment of this disclosure, a user interface can be provided to a user, which includes at least configuration areas for a start position and an end position. The user can configure a first start position and a first end position in these configuration areas. Alternatively, in... Figure 4 The interactive interface can also include an auto-configuration button. If the user triggers the auto-configuration button, it will automatically configure a random first starting position and a first ending position.
[0051] In addition, Figure 4 The user interface can also include a configuration area for bootstrap test cases. This area can include a list of bootstrap test cases and a bootstrap test case search box. Users can select the corresponding bootstrap test cases from the list or quickly search for them using the search box. Alternatively, in Figure 4 The user interface can also include an automatic matching button. When the user triggers the automatic matching button, the system will automatically plan a second route based on the first starting point and the first ending point. Based on high-precision road network data, it will determine one or more road scenarios included in the second planned route as target road scenarios, and then obtain the guide use cases of the target road scenarios from the pre-generated full-scenario guide use case database.
[0052] certainly Figure 4 This is merely an illustrative example and not the sole limitation on the first starting point location, the first ending point location, and the method for obtaining the bootstrap test case. In practice, the first starting point location, the first ending point location, and the method for obtaining the bootstrap test case can be flexibly set according to needs.
[0053] Step 202: Input the first starting point position, the first ending point position, and the guidance use case into the guidance engine so that the guidance engine generates a first guidance result based on the reference version of the first lane-level guidance algorithm and generates a second guidance result based on the iterative version of the second lane-level guidance algorithm.
[0054] The guidance engine can be understood as a pre-defined engine that can plan routes based on the starting and ending points, and generate guidance information based on the planned routes and guidance use cases to provide lane-level guidance for vehicles.
[0055] In some embodiments, the guidance engine of this disclosure may include at least a reference version of the lane-level guidance algorithm (hereinafter referred to as the first lane-level guidance algorithm for ease of distinction) and an iterative version of the lane-level guidance algorithm (hereinafter referred to as the second lane-level guidance algorithm). The first lane-level guidance algorithm can be understood as a verified lane-level guidance algorithm, and the second lane-level guidance algorithm can be understood as an algorithm obtained by iteratively updating the first lane-level guidance algorithm. The second lane-level guidance algorithm is an unverified algorithm.
[0056] In some implementations, information such as vehicle speed, vehicle type, rendering method, and broadcast mode can be pre-set in the guidance engine. Then, the first starting position, the first ending position, and the guidance use case are input into the guidance engine. Based on the first starting and ending positions, the guidance engine plans a second planned route. According to the second planned route and the guidance use case, it generates a first guidance result using a first lane-level guidance algorithm and a second guidance result using a second lane-level guidance algorithm. The first and second guidance results can include at least anchor point information, voice broadcast information, and guidance surface information. The guidance surface can be understood as the lane surface of the target lane guiding the vehicle. The guidance surface information can include the coordinate position of the guidance surface and the lane it belongs to. Anchor points can be understood as the coordinate positions for changing driving lanes or directions; anchor point information can include the coordinate position information of the anchor points.
[0057] Step 203: Compare the first guidance result and the second guidance result to obtain the first difference between the second guidance result and the first guidance result, and take the first difference as the first verification result for the second lane-level guidance algorithm.
[0058] In some implementations, at least one piece of information included in the first guidance result and the second guidance result can be compared. For example, in one implementation, the voice broadcast content and / or guidance surface information included in the first guidance result and the second guidance result can be compared to obtain the differences between the voice broadcast content and / or guidance surface. When comparing the first guidance result and the second guidance result, the principle of comparison at the same location can be referenced, that is, comparing the voice broadcast content and / or guidance surface at the same location or the same road segment to determine the differences between the voice broadcast content and guidance surface at the same location, such as whether the guidance surfaces at the same location are the same, whether the voice broadcast content is the same, etc. Furthermore, in some implementations, the positions of anchor points on the same road segment can also be compared to determine whether the anchor point positions are the same, etc.
[0059] It should be noted that the two comparison methods mentioned above are merely exemplary methods and not the only methods. In fact, any information contained in the first and second guidance results can be compared.
[0060] In this embodiment, by inputting the obtained first starting point position, first ending point position, and guidance use case into the guidance engine, the guidance engine generates a first guidance result based on a reference version of the first lane-level guidance algorithm and a second guidance result based on an iterative version of the second lane-level guidance algorithm. By comparing the second guidance result with the first guidance result, the difference between the second lane-level guidance algorithm and the first lane-level guidance algorithm in the output result can be quickly and accurately determined. This difference can then be used as a verification result to accurately determine whether the iterative second lane-level guidance algorithm has achieved the expected effect, thereby realizing a fast and effective verification of the lane-level guidance algorithm.
[0061] Figure 5 This is a flowchart illustrating a verification method for another lane-level guidance algorithm provided in this embodiment of the disclosure. Figure 5 As shown, in some embodiments, after inputting the first starting point position, the first ending point position, and the guidance use case into the guidance engine, the lane-level guidance algorithm can also be verified based on the following method:
[0062] Step 501: Obtain the first and second boot surface anomaly information detected by the boot engine.
[0063] The first guide surface anomaly information in this embodiment can be understood as information about anomalies detected by the guidance engine during the generation of the guide surface based on the first lane-level guidance algorithm (i.e., the base lane-level guidance algorithm). The second guide surface anomaly information can be understood as information about anomalies detected by the guidance engine during the generation of the guide surface based on the second lane-level guidance algorithm (i.e., the iterative version of the lane-level guidance algorithm).
[0064] Information about abnormal situations on the guide surface (hereinafter referred to as abnormal information) may include the type of abnormal situation, the location where the abnormal situation occurs, etc.
[0065] Anomalies in the guiding surface include, but are not limited to, issues such as guiding surface interruption and missing local data in parts of the guiding surface that are not interrupted. Missing local data in the guiding surface further includes situations such as a hollow guiding surface or missing data on both sides of a portion of the guiding surface. For example... Figure 6 This is a schematic diagram illustrating a guide surface interruption scenario provided in an embodiment of this disclosure. Figure 6 The black portion of the road serves as a guide surface, such as... Figure 6 As shown, in Figure 6 The guide surfaces in the road shown should normally be continuous, but... Figure 6 The marked section clearly shows a break, which can be interpreted as a problem with the guiding surface being interrupted. For example, Figure 7 This is a schematic diagram of a case where the guide surface is hollow, provided in an embodiment of this disclosure. Similarly, Figure 7 The black portion of the road also indicates a guide surface, while... Figure 7 In the road shown, the guide surface should normally be a continuous plane and should not have any hollow parts. Figure 7 The marked portion of the guide surface shown is hollow (i.e., the white area surrounded by the black portion within the guide surface). This indicates that the guide surface has a hollow component. For example, Figure 8 This is a schematic diagram illustrating a situation where data is missing on both sides of the guide surface, as provided in an embodiment of this disclosure. Figure 8 As shown, under normal circumstances, the width of the lane remains constant in a local area, while... Figure 8 The marked part of the guide surface (the lane in black) is clearly missing some data, which can be understood as a partial data loss in the guide surface.
[0066] In practice, the guidance engine has the ability to detect the aforementioned anomalies during the generation of the guidance surface. Upon detecting such anomalies, the guidance engine will, in conjunction with traffic rules, correct the problems existing in the guidance surface, such as filling in areas with interruptions, hollow areas, or missing data. In this embodiment, the above-mentioned detection capabilities of the guidance engine can be directly utilized to obtain the first and second guidance surface anomaly information directly from the guidance engine.
[0067] Step 502: Compare the abnormal information of the first guide surface and the abnormal information of the second guide surface to obtain the second difference, and use the second difference as the second verification result for the second lane-level guidance algorithm.
[0068] In this embodiment, anomalies in the guide surface generated by the first lane-level guidance algorithm can be statistically analyzed based on the first guide surface anomaly information, and anomalies in the guide surface generated by the second lane-level guidance algorithm can be statistically analyzed based on the second guide surface anomaly information. Then, based on the statistical results of both methods, the types, locations, and quantities of anomalies in the guide surfaces are compared to obtain the differences between the two methods in terms of guide surface anomalies (hereinafter referred to as the second difference).
[0069] In this embodiment of the disclosure, by statistically analyzing and comparing the abnormalities of the guidance surfaces generated by the first lane-level guidance algorithm and the second lane-level guidance algorithm, the differences between the second lane-level guidance algorithm and the first lane-level guidance algorithm in terms of guidance surface anomalies can be obtained quickly and accurately. This helps technicians to quickly evaluate the guidance surface generation capability and effect of the second lane-level guidance algorithm, and quickly pinpoint the cause of the problem by comparing it with the first lane-level guidance algorithm.
[0070] Figure 9 This is a flowchart illustrating a verification method for another lane-level guidance algorithm provided in this disclosure. For example... Figure 9 As shown, in some embodiments, after inputting the first starting point position, the first ending point position, and the guidance use case into the guidance engine, the lane-level guidance algorithm can also be verified based on the following method:
[0071] Step 901: Obtain the first guide surface vector data obtained by the guidance engine based on the first lane-level guidance algorithm and the second guide surface vector data obtained by the guidance engine based on the second lane-level guidance algorithm.
[0072] In practice, the guidance engine generates guidance surface vector data during the process of generating guidance surfaces based on lane-level guidance algorithms. This guidance surface vector data includes vector data of shape points on the guidance surface. Similarly, in this embodiment, the guidance engine generates first guidance surface vector data during the process of generating a guidance surface (hereinafter referred to as the first guidance surface) based on a first lane-level guidance algorithm, and generates second guidance surface vector data during the process of generating a guidance surface (hereinafter referred to as the second guidance surface) based on a second lane-level guidance algorithm. This embodiment can directly obtain the first and second guidance surface vector data from the guidance engine.
[0073] Step 902: Generate a first guide surface based on the first guide surface vector data, and generate a second guide surface based on the second guide surface vector data.
[0074] After obtaining the first guide surface vector data and the second guide surface vector data, this embodiment of the present disclosure can reconstruct the first guide surface and the second guide surface based on the shape point data included in the first guide surface vector data and the second guide surface vector data. The method for reconstructing the guide surface based on the guide surface vector data can be found in related technologies, and will not be described in detail in this embodiment of the present disclosure.
[0075] Step 903: Based on high-precision road network data, determine the abnormal information of the first guide surface and the abnormal information of the second guide surface.
[0076] In some implementations, after obtaining the first guide surface and the second guide surface, it can be determined whether there are discontinuous areas on the first guide surface and the second guide surface based on their distribution. If there are, it can be determined whether the actual distribution of the area is discontinuous based on the high-precision road network data. If not, it can be determined that there is an anomaly in the area, and the location of the area and the type of the anomaly are saved in the anomaly information. If so, it can be determined that no anomaly has occurred in the area.
[0077] In other implementations, the first and second guide surfaces can be directly assessed based on high-precision road network data. If the distribution of a certain area on either the first or second guide surface is inconsistent with the data recorded in the high-precision road network data, an anomaly is identified in that area. For example, if the width of the first guide surface in a certain area is A, but the lane width in that area is B according to the high-precision road network data, and the width of A is less than B, it can be determined that there is a partial data gap in the guide surface in that area. In this case, information such as the location of the area and the type of anomaly can be added to the anomaly information of the first guide surface.
[0078] Step 904: Compare the abnormal information of the first guide surface and the abnormal information of the second guide surface to obtain the third difference, and use the third difference as the third verification result for the second lane-level guidance algorithm.
[0079] The comparison method in step 904 of this embodiment can be found in step 502 of the above embodiment, and will not be repeated here.
[0080] In this embodiment, a first guide surface is generated based on the first guide surface vector data generated by a first lane-level guidance algorithm, and a second guide surface is generated based on the data from a second lane-level guidance algorithm. High-precision road network data is used to identify anomalies on both the first and second guide surfaces, enabling rapid and accurate identification of these anomalies. By statistically analyzing and comparing these anomalies, the differences between the second and first lane-level guidance algorithms in guide surface anomalies can be quickly and accurately determined. This helps technicians rapidly evaluate the guide surface generation capability and effectiveness of the second lane-level guidance algorithm and quickly pinpoint the cause of problems by comparing it with the first lane-level guidance algorithm.
[0081] Figure 10 This is a flowchart illustrating a verification method for another lane-level guidance algorithm provided in this disclosure. For example... Figure 10 As shown, in some embodiments, after inputting the first starting point position, the first ending point position, and the guidance use case into the guidance engine, the lane-level guidance algorithm can also be verified based on the following method:
[0082] Step 1001: Obtain the first guide surface image rendered by the guide engine based on the first lane-level guide algorithm and the second guide surface image rendered based on the second lane-level guide algorithm.
[0083] The first guide surface image can be understood as an image of a guide surface at a key location determined by a first lane-level guidance algorithm. Correspondingly, the second guide surface image can be understood as an image of a guide surface at the same key location determined by a second lane-level guidance algorithm. Alternatively, in other embodiments, the first and second guide surface images can also be understood as images of the guide surfaces for the entire planned route.
[0084] The guidance engine can render a first guidance surface image and a second guidance surface image based on a first lane-level guidance algorithm and a second lane-level guidance algorithm, respectively. In this embodiment, the first and second guidance surface images can be directly obtained from the guidance engine.
[0085] It should be noted that in some implementations, the guiding engine can be configured to generate images containing only the guiding surface, so that the first and second guiding surface images contain only the guiding surface and not other interfering elements. This eliminates interference from other elements on the guiding surface alignment and improves the accuracy of the guiding surface alignment.
[0086] Step 1002: Based on the first guide surface image and the second guide surface image, compare the guide surfaces determined by the first lane-level guidance algorithm and the second lane-level guidance algorithm to obtain the fourth difference, and use the fourth difference as the fourth verification result for the second lane-level guidance algorithm.
[0087] This disclosure provides various methods for comparing the guide surfaces determined by the first lane-level guidance algorithm and the second lane-level guidance algorithm based on the first guide surface image and the second guide surface image. For example, in one embodiment, the first and second guide surface images can be input into a pre-trained model, and the model can identify the differences between the guide surfaces in the first and second guide surface images, i.e., the fourth difference. In another embodiment, the first and second guide surface images can be converted into grayscale images first, and then the grayscale values of the guide surfaces contained in the first and second guide surface images can be obtained. Then, the grayscale values of the guide surfaces in the first and second guide surface images that are lower than a preset threshold are compared to obtain the fourth difference. The method for converting images to grayscale images can be found in related technologies and will not be elaborated here.
[0088] In this embodiment of the disclosure, the guide surfaces determined by the first lane-level guidance algorithm and the second lane-level guidance algorithm are compared based on the guide surface image. This allows for a quick and accurate determination of the differences between the guide surfaces, thereby helping technicians to quickly analyze the problems existing in the second lane-level guidance algorithm.
[0089] It should be noted that the solutions in the above embodiments can also be combined. For example, the first difference, second difference, third difference and fourth difference can be obtained by means of the above embodiments, and then the first difference, second difference, third difference and fourth difference can be merged to improve the comprehensiveness and accuracy of lane-level guidance algorithm detection.
[0090] In addition, in some implementations, the verification results (i.e., one or more of the first verification result, second verification result, third verification result, and fourth verification result) obtained from one or more of the above embodiments can be rendered and displayed, thereby enabling technicians to intuitively and accurately determine the differences between the iterative version of the lane-level guidance algorithm and the reference version of the lane-level guidance algorithm through visualization, and helping technicians to quickly pinpoint the problem.
[0091] Figure 11 This is a schematic diagram of a verification device for a lane-level guidance algorithm provided in an embodiment of this disclosure. This verification device can be understood as the computer device or a functional module within the computer device described in the above embodiments. Figure 11As shown, in one embodiment of this disclosure, the verification device 1100 may include:
[0092] The first acquisition module 1101 is used to acquire the first starting point position, the first ending point position, and the guiding test case;
[0093] Input module 1102 is used to input the first starting point position, the first ending point position and the guidance use case into the guidance engine, so that the guidance engine generates a first guidance result based on the reference version of the first lane-level guidance algorithm and generates a second guidance result based on the iterative version of the second lane-level guidance algorithm;
[0094] The first comparison module 1103 is used to compare the first guidance result and the second guidance result to obtain a first difference between the second guidance result and the first guidance result, and to use the first difference as a first verification result for the second lane-level guidance algorithm.
[0095] In one embodiment, the verification device 1100 may further include:
[0096] The second acquisition module is used to acquire the vehicle's log information, which includes the second starting point location and the second ending point location of the historical trip.
[0097] The first generation module is used to generate a first planned route based on the second starting point position and the second ending point position;
[0098] The first determining module is used to determine, based on high-precision road network data, the road scenarios in the first planned route that are covered by the high-precision road network data;
[0099] An add module is used to add the guide test cases used in the road scenario during the guided test to a preset full-scenario guide test case database.
[0100] In one embodiment, the first acquisition module 1101 is configured to:
[0101] Obtain the first starting point position and the first ending point position;
[0102] Based on the first starting point and the first ending point, a second planned route is generated;
[0103] Based on high-precision road network data, the target road scenes covered by the high-precision road network data in the second planned route are determined.
[0104] Retrieve the guidance use cases for the target road scenario from the preset full-scenario guidance use case database.
[0105] In one implementation, the first comparison module 1103 is used for:
[0106] The voice broadcast content included in the first guidance result and the second guidance result is compared to obtain the differences in the voice broadcast content;
[0107] and / or
[0108] The information of the guiding surface included in the first guidance result and the second guidance result is compared to obtain the difference in the guiding surface;
[0109] The guide surface refers to the lane surface of the lane that guides vehicles.
[0110] In one embodiment, the verification device 1100 may further include a second comparison module, used for:
[0111] Obtain the first and second guide surface anomaly information detected by the guide engine;
[0112] The first guide surface anomaly information and the second guide surface anomaly information are compared to obtain a second difference, and the second difference is used as a second verification result for the second lane-level guidance algorithm;
[0113] Wherein, the first guide surface abnormality information refers to the abnormality information of the guide surface generated by the first lane-level guidance algorithm, and the second guide surface abnormality information refers to the abnormality information of the guide surface generated by the second lane-level guidance algorithm;
[0114] The first and second guidance surface anomaly information include at least one of the following anomaly conditions: guidance surface interruption, or partial data loss in the uninterrupted guidance surface.
[0115] In one embodiment, the verification device 1100 may further include a third comparison module, used for:
[0116] The first guide surface vector data obtained by the guidance engine based on the first lane-level guidance algorithm and the second guide surface vector data obtained by the guidance engine based on the second lane-level guidance algorithm are obtained.
[0117] A first guide surface is generated based on the first guide surface vector data, and a second guide surface is generated based on the second guide surface vector data;
[0118] Based on high-precision road network data, the abnormal information of the first guide surface and the abnormal information of the second guide surface are determined;
[0119] The abnormal information of the first guide surface and the abnormal information of the second guide surface are compared to obtain a third difference, and the third difference is used as the third verification result for the second lane-level guidance algorithm.
[0120] In one embodiment, the verification device 1100 may further include a fourth comparison module, used for:
[0121] Obtain the first guide surface image rendered by the guidance engine based on the first lane-level guidance algorithm and the second guide surface image rendered based on the second lane-level guidance algorithm;
[0122] Based on the first guide surface image and the second guide surface image, the guide surfaces determined by the first lane-level guidance algorithm and the second lane-level guidance algorithm are compared to obtain a fourth difference, and the fourth difference is used as the fourth verification result for the second lane-level guidance algorithm.
[0123] In one implementation, the fourth comparison module is used for:
[0124] Obtain the grayscale values of the guide surfaces contained in the first guide surface image and the second guide surface image;
[0125] The portions of the second guide surface image and the first guide surface image with gray values lower than a preset threshold are compared to obtain a fourth difference.
[0126] In one embodiment, the verification device 1100 may further include:
[0127] The display module is used to display the verification results for the second lane-level guidance algorithm.
[0128] The verification device provided in this disclosure can execute the method of any of the above method embodiments, and its execution mode and beneficial effects are similar, so they will not be described again here.
[0129] This disclosure also provides a computer device, which includes a memory and a processor, wherein the memory stores a computer program, and when the computer program is executed by the processor, it can implement the method of any of the above method embodiments.
[0130] Example, Figure 12 This is a schematic diagram of the structure of a computer device according to an embodiment of this disclosure. See below for details. Figure 12 The diagram illustrates a structural schematic suitable for implementing the computer device 1400 in the embodiments of this disclosure. The computer device 1400 in the embodiments of this disclosure may include, but is not limited to, devices with computing and data processing capabilities such as laptops, tablets, desktop computers, servers, and distributed computing nodes. Figure 12 The computer device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments disclosed herein.
[0131] like Figure 12 As shown, computer device 1400 may include a processing unit (e.g., a central processing unit, a graphics processing unit, etc.) 1401, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 1402 or a program loaded from storage device 1408 into random access memory (RAM) 1403. The RAM 1403 also stores various programs and data required for the operation of computer device 1400. The processing unit 1401, ROM 1402, and RAM 1403 are interconnected via bus 1404. Input / output (I / O) interface 1405 is also connected to bus 1404.
[0132] Typically, the following devices can be connected to I / O interface 1405: input devices 1406 including, for example, a touchscreen, touchpad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; output devices 1407 including, for example, a liquid crystal display (LCD), speaker, vibrator, etc.; storage devices 1408 including, for example, magnetic tape, hard disk, etc.; and communication devices 1409. Communication device 1409 allows computer device 1400 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 12 A computer device 1400 with various devices is shown, but it should be understood that it is not required to implement or have all of the devices shown. More or fewer devices may be implemented or have instead.
[0133] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via communication device 1409, or installed from storage device 1408, or installed from ROM 1402. When the computer program is executed by processing device 1401, it performs the functions defined in the methods of embodiments of this disclosure.
[0134] It should be noted that the computer-readable medium described in this disclosure can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can 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 a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer 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 device, magnetic storage device, or any suitable combination thereof. In this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in connection with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0135] The aforementioned computer-readable medium may be included in the aforementioned computer device; or it may exist independently and not assembled into the computer device.
[0136] The aforementioned computer-readable medium carries one or more programs. When the one or more programs are executed by a processing device, the processing device: acquires a first starting point location, a first ending point location, and a boot case; inputs the first starting point location, the first ending point location, and the boot case into a boot engine, so that the boot engine generates a first boot result based on a reference version of a first lane-level boot algorithm and generates a second boot result based on an iterative version of a second lane-level boot algorithm; compares the first boot result and the second boot result to obtain a first difference between the second boot result and the first boot result, and uses the first difference as a first verification result for the second lane-level boot algorithm.
[0137] Computer program code for performing the operations of this disclosure can be written in one or more programming languages or a combination thereof, including but not limited to object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0138] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0139] The units described in the embodiments of this disclosure can be implemented in software or hardware. The names of the units are not, in some cases, intended to limit the specific unit.
[0140] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.
[0141] 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, 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 of the foregoing.
[0142] This disclosure also provides a computer-readable storage medium storing a computer program that, when executed by a processor, can perform the above-described functions. Figures 2-10 The methods in any of the embodiments are similar in execution and beneficial effects, and will not be described again here.
[0143] This disclosure also provides a computer program product, which is stored in a storage medium. When the program product is run, it can achieve... Figures 2-10 The methods in any of the embodiments are similar in execution and beneficial effects, and will not be described again here.
[0144] It should be noted that, in this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0145] The above description is merely a specific embodiment of this disclosure, enabling those skilled in the art to understand or implement it. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of this disclosure. Therefore, this disclosure is not to be limited to the embodiments described herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A verification method for a lane-level guidance algorithm, wherein, include: Obtain the first starting point position and the first ending point position; Based on the first starting point and the first ending point, a second planned route is generated; Based on high-precision road network data, the target road scenes covered by the high-precision road network data in the second planned route are determined. The system retrieves the guidance use cases for the target road scenario from a pre-defined full-scenario guidance use case database, wherein the guidance use cases are used to enable the guidance engine to determine how to guide the system. The first starting point location, the first ending point location, and the guidance use case are input into the guidance engine, so that the guidance engine generates a first guidance result based on the reference version of the first lane-level guidance algorithm and generates a second guidance result based on the iterative version of the second lane-level guidance algorithm. The first guidance result and the second guidance result are compared to obtain the first difference between the second guidance result and the first guidance result, and the first difference is used as the first verification result for the second lane-level guidance algorithm.
2. The method according to claim 1, wherein, Before obtaining the first starting point position and the first ending point position, the method further includes: Obtain vehicle log information, which includes the second starting point and second ending point of historical trips; Based on the second starting point and the second ending point, a first planned route is generated; Based on high-precision road network data, determine the road scenes in the first planned route that are covered by the high-precision road network data; The guide test cases used in the road scenario during the guided test are added to the preset full-scenario guide test case database as guide test cases for the road scenario.
3. The method according to claim 1, wherein, The comparison of the first guidance result and the second guidance result to obtain the first difference between the second guidance result and the first guidance result includes: The voice broadcast content included in the first guidance result and the second guidance result is compared to obtain the differences in the voice broadcast content; and / or The information of the guiding surface included in the first guidance result and the second guidance result is compared to obtain the difference in the guiding surface; The guide surface refers to the lane surface of the lane that guides vehicles.
4. The method according to claim 1, wherein, After inputting the first starting point position, the first ending point position, and the guidance use case into the guidance engine, so that the guidance engine generates a first guidance result based on a reference version of the first lane-level guidance algorithm and a second guidance result based on an iterative version of the second lane-level guidance algorithm, the method further includes: Obtain the first and second guide surface anomaly information detected by the guide engine; The first guide surface anomaly information and the second guide surface anomaly information are compared to obtain a second difference, and the second difference is used as a second verification result for the second lane-level guidance algorithm; Wherein, the first guide surface abnormality information refers to the abnormality information of the guide surface generated by the first lane-level guidance algorithm, and the second guide surface abnormality information refers to the abnormality information of the guide surface generated by the second lane-level guidance algorithm; The first and second guidance surface anomaly information include at least one of the following anomaly conditions: guidance surface interruption, or partial data loss in the uninterrupted guidance surface.
5. The method according to claim 1 or 4, wherein, After inputting the first starting point position, the first ending point position, and the guidance use case into the guidance engine, so that the guidance engine generates a first guidance result based on a reference version of the first lane-level guidance algorithm and a second guidance result based on an iterative version of the second lane-level guidance algorithm, the method further includes: The first guide surface vector data obtained by the guidance engine based on the first lane-level guidance algorithm and the second guide surface vector data obtained by the guidance engine based on the second lane-level guidance algorithm are obtained. A first guide surface is generated based on the first guide surface vector data, and a second guide surface is generated based on the second guide surface vector data; Based on high-precision road network data, the abnormal information of the first guide surface and the abnormal information of the second guide surface are determined; The abnormal information of the first guide surface and the abnormal information of the second guide surface are compared to obtain a third difference, and the third difference is used as the third verification result for the second lane-level guidance algorithm.
6. The method according to claim 5, wherein, After inputting the first starting point position, the first ending point position, and the guidance use case into the guidance engine, so that the guidance engine generates a first guidance result based on a reference version of the first lane-level guidance algorithm and a second guidance result based on an iterative version of the second lane-level guidance algorithm, the method further includes: Obtain the first guide surface image rendered by the guidance engine based on the first lane-level guidance algorithm and the second guide surface image rendered based on the second lane-level guidance algorithm; Based on the first guide surface image and the second guide surface image, the guide surfaces determined by the first lane-level guidance algorithm and the second lane-level guidance algorithm are compared to obtain a fourth difference, and the fourth difference is used as the fourth verification result for the second lane-level guidance algorithm.
7. The method according to claim 6, wherein, The fourth difference is obtained by comparing the guidance surfaces determined by the first lane-level guidance algorithm and the second lane-level guidance algorithm based on the first guidance surface image and the second guidance surface image, including: Obtain the grayscale values of the guide surfaces contained in the first guide surface image and the second guide surface image; The portions of the second guide surface image and the first guide surface image with gray values lower than a preset threshold are compared to obtain a fourth difference.
8. The method according to any one of claims 1, 4, 6 or 7, wherein, The method further includes: The verification results for the second lane-level guidance algorithm are displayed.
9. A verification device for a lane-level guidance algorithm, wherein, include: The first acquisition module is used to acquire the first starting point position and the first ending point position; Based on the first starting point and the first ending point, a second planned route is generated; Based on high-precision road network data, the target road scenes covered by the high-precision road network data in the second planned route are determined. The system retrieves the guidance use cases for the target road scenario from a pre-defined full-scenario guidance use case database, wherein the guidance use cases are used to enable the guidance engine to determine how to guide the system. The input module is used to input the first starting point position, the first ending point position and the guidance use case into the guidance engine, so that the guidance engine generates a first guidance result based on the reference version of the first lane-level guidance algorithm and generates a second guidance result based on the iterative version of the second lane-level guidance algorithm; The first comparison module is used to compare the first guidance result and the second guidance result to obtain a first difference between the second guidance result and the first guidance result, and to use the first difference as the first verification result for the second lane-level guidance algorithm.
10. A computer device, wherein, It includes a memory and a processor, wherein the memory stores a computer program that, when executed by the processor, implements the method as described in any one of claims 1-8.
11. A computer-readable storage medium, wherein, The storage medium stores a computer program, which, when executed, implements the method as described in any one of claims 1-8.
12. A computer program product, wherein, The program product is stored in a storage medium, and when the program product is run, it implements the method as described in any one of claims 1-8.