Software evaluation method and device, electronic equipment and storage medium
By comparing the time information of the first and second autonomous driving software during the process of changing lanes from obstacles to lanes, automatic and efficient evaluation of the performance of the autonomous driving software is achieved, and the problem of inefficient evaluation in the prior art is solved, ensuring the quality and safety of software release.
Patent Information
- Application Number
- CN202510608691.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-12
- Publication Date
- 2025-08-26
AI Technical Summary
The existing self-driving software evaluation methods are inefficient, especially in complex traffic environments, and it is difficult to efficiently evaluate the reliability and safety of autonomous driving software.
Through the first autonomous driving software and the updated second autonomous driving software, based on the scene data of the obstacle entering the lane, the prediction data of the obstacle changing lane to the lane is determined, and the time information of the two at different stages is obtained and compared, so as to realize automated evaluation of the software performance.
It improves the efficiency of autonomous driving software evaluation, reduces the repetitive test of the real-time vehicle end, ensures the quality and safety of software release, and improves the efficiency and accuracy of software testing.
Smart Images

Figure CN120540949A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of autonomous driving, and more specifically, to a software evaluation method, device, electronic device, and storage medium. Background Art
[0002] With the rapid development of autonomous driving technology, people are increasingly concerned about the reliability and safety of vehicles' autonomous driving functions in complex traffic environments. Although a variety of assisted driving functions are available on the market, existing evaluation methods mostly rely on manual judgment in complex scenarios such as other vehicles cutting in, resulting in low evaluation efficiency. Summary of the Invention
[0003] In view of this, the embodiments of the present application propose a software evaluation method, device, electronic device, and storage medium to improve the above-mentioned problems.
[0004] In a first aspect, an embodiment of the present application provides a software evaluation method, the method comprising: determining prediction data of an obstacle changing lanes to the own lane based on scene data of an obstacle cutting into the own lane through a first autonomous driving software and a second autonomous driving software respectively, obtaining first prediction data corresponding to the first autonomous driving software and second prediction data corresponding to the second autonomous driving software, the prediction data including time information of different stages in the process of predicting the obstacle changing lanes to the own lane, and the second autonomous driving software is obtained after updating the first autonomous driving software; evaluating the second autonomous driving software according to the first prediction data and the second prediction data to obtain an evaluation result.
[0005] In a second aspect, an embodiment of the present application provides a software evaluation device, comprising: a software execution module and a software evaluation module. The software execution module is configured to determine, using first and second autonomous driving software, prediction data for an obstacle changing lanes to a self-lane based on scenario data of an obstacle cutting into a self-lane, to obtain first prediction data corresponding to the first autonomous driving software and second prediction data corresponding to the second autonomous driving software, the prediction data including time information for different stages of the predicted obstacle changing lanes to the self-lane. The second autonomous driving software is obtained by updating the first autonomous driving software. The software evaluation module is configured to evaluate the second autonomous driving software based on the first and second prediction data to obtain an evaluation result.
[0006] In a third aspect, an embodiment of the present application provides an electronic device, comprising a memory and a processor, wherein the memory is coupled to the processor, the memory stores instructions, and when the instructions are executed by the processor, the processor executes the above method.
[0007] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, in which program code is stored, and the program code can be called by a processor to execute the above method.
[0008] In the solution of the present application, the first autonomous driving software and the second autonomous driving software obtained after updating the first autonomous driving software are used respectively to determine the prediction data of the obstacle changing lanes to the own lane based on the scene data of the obstacle cutting into the own lane, and obtain the first prediction data corresponding to the first autonomous driving software and the second prediction data corresponding to the second autonomous driving software. The prediction data include the time information of the different stages in the process of predicting the obstacle changing lanes to the own lane, and the second autonomous driving software is evaluated based on the first prediction data and the second prediction data to obtain the evaluation results. Based on the time information of the different stages in the process of the obstacle changing lanes to the own lane predicted twice before and after the software update, the updated software is evaluated, thereby realizing automatic and efficient testing of the autonomous driving software performance and improving the efficiency of software evaluation. BRIEF DESCRIPTION OF THE DRAWINGS
[0009] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For those skilled in the art, other drawings can be obtained based on these drawings without creative work.
[0010] Figure 1 A flowchart of a software evaluation method according to an embodiment of the present invention is shown;
[0011] Figure 2 A flowchart of a software evaluation method according to an embodiment of the present invention is shown;
[0012] Figure 3 A module block diagram of a software evaluation device provided in one embodiment of the present application is shown;
[0013] Figure 4 A block diagram of an electronic device for executing a software evaluation method according to an embodiment of the present application is shown;
[0014] Figure 5 A storage unit for storing or carrying program codes for implementing the software evaluation method according to an embodiment of the present application is shown. DETAILED DESCRIPTION
[0015] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application.
[0016] In order to better understand the solutions of the embodiments of the present application, the technical terms used in the embodiments of the present application are explained below.
[0017] A version control system (VCS) is a software tool used to manage changes to files and directories. It records every modification to a file, allowing users to view and restore previous versions, track changes, and support collaborative development. Version control systems are widely used in software development, document management, configuration management, and other fields. Representative tools include Git, Mercurial, SVN (Subversion), and CVS (Concurrent Versions System).
[0018] Continuous Integration (CI) is a software development practice in which developers frequently integrate code changes into a shared code repository, often multiple times a day. The core idea is to automate the process of merging individual developers' changes into a central code repository and running a series of predefined tests to ensure that the new code does not introduce errors.
[0019] The following is a detailed description of the implementation details of the technical solution of the embodiment of the present application:
[0020] With the advancement of science and technology, autonomous driving technology has rapidly developed, and vehicles with assisted driving functions are becoming increasingly common. Consequently, there is a challenge in efficiently evaluating software that assists in driving.
[0021] To address the above issues, the inventors, after extensive research, have developed the software evaluation method, device, electronic device, and storage medium provided in the embodiments of this application. By evaluating the updated software based on the time information from two predicted obstacle lane changes to the driver's lane before and after the software update, the updated software is evaluated. This enables automated and efficient testing of autonomous driving software performance, improving the efficiency of software evaluation. The specific software evaluation method is described in detail in the subsequent embodiments.
[0022] The embodiments of the present application will be described below with reference to the accompanying drawings.
[0023] See also Figure 1 , Figure 1 FIG1 shows a flow chart of a software evaluation method provided by an embodiment of the present application. In a specific embodiment, the software evaluation method can be applied to Figure 3 The software evaluation device 200 and the electronic device 100 equipped with the software evaluation device 200 are shown in FIG. Figure 4 ). The following will take electronic equipment as an example to illustrate the specific process of this embodiment. Of course, it can be understood that the electronic equipment used in this embodiment can include vehicles, intelligent transportation equipment, vehicle-mounted terminals, computers, servers and other equipment, which are not limited here. Figure 1 The process shown in FIG. 1 is described in detail. The software evaluation method may specifically include the following steps:
[0024] Step S110: Determine prediction data of an obstacle changing lanes to the own lane based on scene data of an obstacle cutting into the own lane using the first autonomous driving software and the second autonomous driving software respectively, and obtain first prediction data corresponding to the first autonomous driving software and second prediction data corresponding to the second autonomous driving software. The prediction data include time information of different stages in the process of predicting the obstacle changing lanes to the own lane. The second autonomous driving software is obtained after updating the first autonomous driving software.
[0025] In some embodiments, the electronic device may pre-store scenario data for an obstacle cutting into the vehicle's lane. This scenario data includes, but is not limited to, the vehicle's behavior data, environmental information about the vehicle's surroundings, and sensor data within a preset timeframe, when an obstacle changes lanes from an adjacent lane into the vehicle's lane. Obstacles may include movable objects such as vehicles, pedestrians, and animals. Optionally, the electronic device may obtain this scenario data from a related cloud or other electronic device. The electronic device may be communicatively connected to the vehicle and, accordingly, may obtain scenario data collected during the vehicle's actual operation regarding an obstacle cutting into the vehicle's lane (e.g., obtaining multi-dimensional vehicle driving data such as the moment the obstacle cuts into the vehicle's lane and crosses the lane line, the vehicle's behavior data, environmental information about the environment, and sensor data within a preset timeframe before and after the obstacle cuts into the vehicle's lane). The electronic device may store this collected scenario data for subsequent software evaluation. Among them, the number of obstacles in the scene data that change lanes from adjacent lanes into the lane where the vehicle is located can be one or more; accordingly, the electronic device can communicate with multiple vehicles to obtain scene data of obstacles changing lanes from adjacent lanes into the lane where the vehicle is located during the driving of the multiple vehicles.
[0026] For example, a vehicle communicatively connected to an electronic device can receive a scene data recording instruction input by the driver while driving the vehicle, such as a scene data recording instruction input by the driver via a lever. Accordingly, the vehicle can respond to the instruction and record scene data such as the vehicle's behavior data, environmental information of the environment in which it is located, and data detected by the vehicle's sensors within a preset time period (e.g., 30s, 40s, etc.) before and after receiving the instruction. The scene data can also be packaged and sent to the electronic device, which can then construct a scene of other vehicles entering the scene based on the scene data, thereby improving the coverage and accuracy of software evaluation.
[0027] In some embodiments, the electronic device may be pre-installed with first and second autonomous driving software. The second autonomous driving software may be an update of the first autonomous driving software. Both the first and second autonomous driving software may be used to assist vehicle driving, such as for environmental perception, path planning, decision-making, and vehicle control. In this embodiment, the functions of the first and second autonomous driving software in assisting vehicle driving are not limited.
[0028] Among them, the electronic device can receive the code submitted by the developer after completing the writing and debugging of the autonomous driving software code in the local development environment. Among them, the electronic device can send the code to the version control system (such as Git). Accordingly, the electronic device can also automatically trigger the compilation process of the code through the continuous integration (CI) system. Based on this, the editing environment can automatically compile the code according to the project configuration to generate compiled products such as executable files and software packages. Accordingly, the electronic device can package and store the compiled products (such as executable files, software packages, etc.) for subsequent software evaluation. Optionally, the electronic device can trigger the compilation of a new version each time it receives the code corresponding to the submitted autonomous driving software to obtain different versions of the autonomous driving software. Accordingly, after the electronic device compiles the code to obtain the first autonomous driving software, it can obtain the updated code for the first autonomous driving software and compile it to obtain the second autonomous driving software.
[0029] In some embodiments, an electronic device may determine, using first and second autonomous driving software, prediction data for an obstacle changing lane to the vehicle's own lane based on scenario data of an obstacle cutting into the vehicle's own lane, thereby obtaining first prediction data corresponding to the first autonomous driving software and second prediction data corresponding to the second autonomous driving software. The electronic device may input the acquired obstacle-cutting-into-the-vehicle scenario data into the first and second autonomous driving software for automated testing. Accordingly, the first and second autonomous driving software may be run separately to simulate a scenario of an obstacle cutting into the vehicle's own lane and collect data from the operations of the first and second autonomous driving software. The first and second autonomous driving software may each generate corresponding logs during their execution. Accordingly, the electronic device may obtain the first prediction data corresponding to the first autonomous driving software based on the logs corresponding to the first autonomous driving software, and the electronic device may also obtain the second prediction data corresponding to the second autonomous driving software based on the logs corresponding to the second autonomous driving software. The electronic device may compare the first prediction data with the second prediction data to analyze differences and performance changes.
[0030] The prediction data corresponding to the first and second autonomous driving software may include time information for different stages of the first and second autonomous driving software's predictions of lane changes from an obstacle to the vehicle's lane, information about vehicle control during the first and second autonomous driving software's respective tests, and other data. The time information may include timestamps, durations, and other information, which are not limited herein.
[0031] For example, the electronic device may sequentially input scenario data of multiple obstacles cutting into the self-driving lane into first and second autonomous driving software, obtain logs corresponding to the first and second autonomous driving software, and extract, from the logs corresponding to the first and second autonomous driving software, time information of different stages of the obstacle's lane change process into the self-driving lane, as predicted by the first and second autonomous driving software, to obtain first prediction data corresponding to the first autonomous driving software and second prediction data corresponding to the second autonomous driving software. In the case where there are multiple obstacles cutting into the self-driving lane, the predicted time information of different stages of the obstacle's lane change process into the self-driving lane in the prediction data corresponding to the autonomous driving software may be associated with the obstacles. For example, the electronic device may use the obstacle ID as an index to obtain time information of different stages of the lane change process corresponding to each obstacle in the data predicted by the autonomous driving software.
[0032] Among them, the different stages of the lane change process corresponding to the obstacle to the ego vehicle can be divided according to the confidence of the predicted obstacle cutting into the trajectory of the ego vehicle.
[0033] Step S120: Evaluate the second autonomous driving software based on the first prediction data and the second prediction data to obtain an evaluation result.
[0034] In this embodiment, after the electronic device obtains the first prediction data corresponding to the first autonomous driving software and the second prediction data corresponding to the second autonomous driving software, it can evaluate the second autonomous driving software based on the first prediction data and the second prediction data to obtain an evaluation result.
[0035] The electronic device can evaluate the second autonomous driving software by comparing the differences between the time information of different stages of the obstacle change process from the first autonomous driving software predicted in the first prediction data and the time information of different stages of the obstacle change process from the second autonomous driving software predicted in the second prediction data, thereby obtaining evaluation results and assessing the software performance, stability, and safety of the second autonomous driving software. For example, the electronic device can evaluate the second autonomous driving software by determining the average, maximum, minimum, and median values of the differences between the time information of different stages of the obstacle change process from the first prediction data and the time information of different stages of the obstacle change process from the second prediction data, thereby obtaining evaluation results. By evaluating the updated software based on the time information of different stages of the obstacle change process from the second lane predicted before and after the software update, repetitive testing on the actual vehicle is avoided, achieving automatic and efficient testing of the autonomous driving software performance and improving the efficiency of software evaluation.
[0036] Based on the evaluation results, the electronic device can determine whether the functionality of the second autonomous driving software has degraded compared to the functionality of the first autonomous driving software, and determine whether the second autonomous driving software meets the release standards. This can avoid unnecessary repetitive testing on a non-actual vehicle side and improve the efficiency of software evaluation. For example, if it is determined that the functionality of the second autonomous driving software has degraded compared to the functionality of the first autonomous driving software, it can be determined that the second autonomous driving software requires further optimization and testing. If it is determined that the functionality of the second autonomous driving software has not degraded compared to the functionality of the first autonomous driving software and meets the release standards, the second autonomous driving software can be released for use in the vehicle, thereby improving the safety and reliability of vehicle driving.
[0037] A software evaluation method provided in an embodiment of the present application determines prediction data of an obstacle changing lanes to the own lane based on scene data of an obstacle cutting into the own lane through first autonomous driving software and second autonomous driving software obtained after updating the first autonomous driving software, and obtains first prediction data corresponding to the first autonomous driving software and second prediction data corresponding to the second autonomous driving software, wherein the prediction data includes time information of different stages in the process of predicting the obstacle changing lanes to the own lane, and the second autonomous driving software is evaluated based on the first prediction data and the second prediction data to obtain an evaluation result, thereby evaluating the updated software based on the time information of different stages in the process of predicting the obstacle changing lanes to the own lane twice before and after the software update, thereby realizing automatic and efficient testing of the autonomous driving software performance and improving the efficiency of software evaluation.
[0038] See also Figure 2 , Figure 2 The flowchart of the software evaluation method provided by an embodiment of the present application is shown. Figure 2 The process shown in FIG. 1 is described in detail. The software evaluation method may specifically include the following steps:
[0039] Step S210: Determine prediction data of an obstacle changing lanes to the own lane based on scene data of an obstacle cutting into the own lane using the first autonomous driving software and the second autonomous driving software respectively, and obtain first prediction data corresponding to the first autonomous driving software and second prediction data corresponding to the second autonomous driving software. The prediction data include time information of different stages in the process of predicting the obstacle changing lanes to the own lane. The second autonomous driving software is obtained after updating the first autonomous driving software.
[0040] For a detailed description of step S210 , please refer to the above description of step S110 , which will not be repeated here.
[0041] Step S220: Based on the first prediction data and the second prediction data, respectively obtain the time delays at different stages predicted by the first autonomous driving software and the second autonomous driving software in the process of changing lanes from the obstacle to the self-lane, and obtain the time delays at different stages corresponding to the first autonomous driving software and the time delays at different stages corresponding to the second autonomous driving software.
[0042] In some embodiments, both the first autonomous driving software and the second autonomous driving software can predict the trajectory of an obstacle; illustratively, when the electronic device inputs the scene data of an obstacle cutting into the own lane into the first autonomous driving software for testing, the first autonomous driving software can predict the trajectory of the obstacle and can predict the time information of different stages in the process of the obstacle changing lanes to the own lane based on the trajectory; when the electronic device inputs the scene data of the obstacle cutting into the own lane into the second autonomous driving software for testing, the second autonomous driving software can predict the trajectory of the obstacle and can predict the time information of different stages in the process of the obstacle changing lanes to the own lane based on the trajectory.
[0043] The obstacle trajectory prediction results of the first autonomous driving software and the second autonomous driving software may include one or more trajectories. Accordingly, the electronic device may obtain prediction data corresponding to the autonomous driving software based on the trajectories predicted by the autonomous driving software. For example, if the obstacle trajectory predicted by the autonomous driving software includes a trajectory that cuts into the vehicle's own lane, it is determined that the obstacle has a lane change intention, and the timestamp of the occurrence of the trajectory predicted by the autonomous driving software that cuts into the vehicle's own lane may be determined as the timestamp of the predicted obstacle's lane change intention.
[0044] If the electronic device determines based on the prediction data that, after predicting the obstacle's lane-changing intention, the obstacle's lane-changing probability reaches a first probability based on the obstacle's trajectory predicted by the autonomous driving software, the process of the obstacle changing lanes to the self-lane can be determined to have reached the first stage. The first stage can be the stage at which the predicted lane-changing probability reaches the first probability. Accordingly, the electronic device can determine the time delay for the obstacle's lane-changing process to reach the first stage based on the timestamp of the autonomous driving software's prediction of the obstacle's lane-changing intention and the timestamp of the predicted lane-changing probability reaching the first probability. The process of the electronic device determining based on the obstacle's trajectory predicted by the autonomous driving software that the obstacle's lane-changing probability reaches the first probability can be when, among the obstacle's trajectories predicted by the autonomous driving software, the number of trajectories that cut into the self-lane reaches a first proportion of all predicted trajectories.
[0045] If the electronic device determines based on the prediction data that, after predicting the obstacle's lane-changing intention, the obstacle's lane-changing probability, as determined based on the obstacle's trajectory predicted by the autonomous driving software, reaches a second probability, then the process of the obstacle changing lanes into the self-lane can be determined to have reached the second stage. The second stage can be the stage at which the predicted lane-changing probability reaches the second probability. Accordingly, the electronic device can determine the time delay until the obstacle's lane-changing intention reaches the second stage based on the timestamp of the autonomous driving software's prediction of the obstacle's lane-changing intention and the timestamp of the predicted lane-changing probability reaching the second probability. The process of the electronic device determining based on the obstacle's trajectory predicted by the autonomous driving software that the obstacle's lane-changing probability reaches the second probability can be when the number of obstacle trajectories predicted by the autonomous driving software that cut into the self-lane reaches a second proportion relative to all predicted trajectories. The second proportion can be greater than the first proportion, and the second probability can be greater than the first probability. Accordingly, the first probability can be interpreted as a low-probability cut-in intention, and the second probability as a high-probability cut-in intention.
[0046] Among them, it can be understood that during the driving process of the vehicle, the obstacle has two states during the movement process: lane keeping and lane changing; and in the process of the obstacle cutting into the self-lane (i.e., lane changing), the process of the obstacle changing lanes to the self-lane can be divided into two stages, such as the low probability cutting intention stage and the high probability cutting intention stage. Accordingly, for these two stages, the electronic device can set two different obstacle cutting trajectory confidences, such as the first probability and the second probability, so as to obtain the time information when the obstacle cutting trajectory confidence reaches the first probability stage and the cutting trajectory confidence reaches the second probability stage in the process of the obstacle changing lanes to the self-lane predicted by the autonomous driving software, and conduct the evaluation of the autonomous driving software, realize the automated detection of the performance of the automated driving software, and improve the evaluation efficiency and accuracy.
[0047] The electronic device can obtain, based on the scene data of the obstacle cutting into the own lane, the timestamp of when the obstacle cuts into the own lane and presses the boundary line of the own lane. Accordingly, the time information of different stages of the predicted obstacle lane change process included in the predicted data may include: the timestamp of the autonomous driving software predicting the obstacle's intention to cut into the own lane, the timestamp of determining that the obstacle has a low probability of cutting into the own lane, the timestamp of determining that the obstacle has a high probability of cutting into the own lane, and the timestamp of when the obstacle cuts into the own lane and presses the boundary line of the own lane.
[0048] As an implementable manner, the electronic device can obtain, based on the first prediction data, the time delay of predicting that the obstacle reaches the first stage in the process of changing lanes to the own lane, as the first time delay. The first stage can be the stage where the probability of lane change of the obstacle reaches the first probability. The first time delay can be determined based on the timestamp when the first autonomous driving software predicts that the obstacle has the intention to change lanes and the timestamp when the predicted probability of lane change of the obstacle reaches the first probability. Exemplarily, the timestamp when the first autonomous driving software predicts that the obstacle has the intention to change lanes is T10, and the timestamp when the predicted probability of lane change of the obstacle reaches the first probability is T11; accordingly, the first time delay B11 = T11-T10 can be obtained, wherein the first time delay can be understood as the time delay when the first autonomous driving software predicts that the obstacle reaches the low probability of cutting in.
[0049] As an implementable method, the electronic device can obtain the time delay of the obstacle reaching the first stage in the process of changing lanes to the own lane based on the second prediction data as the second time delay. The second time delay can be determined based on the timestamp when the second autonomous driving software predicts that the obstacle has the intention to change lanes and the timestamp when the predicted probability of the obstacle changing lanes reaches the first probability. For example, the timestamp when the second autonomous driving software predicts that the obstacle has the intention to change lanes is T20, and the timestamp when the predicted probability of the obstacle changing lanes reaches the first probability is T21; accordingly, the first time delay B21 = T21 - T20 can be obtained, wherein the second time delay can be understood as the time delay when the second autonomous driving software predicts that the obstacle has the intention to cut in with a low probability.
[0050] As an implementable method, the electronic device can obtain, based on the first prediction data, the time delay of predicting that the obstacle reaches the second stage during the process of changing lanes to the own lane, as the third time delay. The second stage can be the stage where the probability of the obstacle changing lanes reaches the second probability, and the second probability can be greater than the first probability. The third time delay can be determined based on the timestamp when the first autonomous driving software predicts that the obstacle has the intention to change lanes and the timestamp when the predicted probability of the obstacle changing lanes reaches the second probability. For example, the timestamp when the first autonomous driving software predicts that the obstacle has the intention to change lanes is T10, and the timestamp when the predicted probability of the obstacle changing lanes reaches the second probability is T12; accordingly, the second time delay B12 = T12 - T10 can be obtained, wherein the third time delay can be understood as the time delay when the first autonomous driving software predicts that the obstacle reaches the high probability of cutting in.
[0051] As an implementable method, the electronic device can obtain the time delay of the obstacle reaching the second stage in the process of changing lanes to the own lane based on the second prediction data as the fourth time delay. The fourth time delay can be determined based on the timestamp when the second autonomous driving software predicts that the obstacle has the intention to change lanes and the timestamp when the predicted lane changing probability of the obstacle reaches the second probability. For example, the timestamp when the second autonomous driving software predicts that the obstacle has the intention to change lanes is T20, and the timestamp when the predicted lane changing probability of the obstacle reaches the second probability is T22; accordingly, the second time delay B22 = T22-T20 can be obtained, wherein the fourth time delay can be understood as the time delay when the second autonomous driving software predicts that the obstacle reaches the high probability of cutting in.
[0052] As an implementable method, the electronic device can obtain the time delay of reaching the third stage in the process of predicting the obstacle changing lanes to the vehicle's own lane based on the first prediction data, as the fifth time delay. The third stage can be the stage of pressing the lane boundary line of the vehicle when the obstacle cuts in. The fifth time delay can be determined based on the timestamp of when the first autonomous driving software predicts that the obstacle has the intention to change lanes and the timestamp of when the lane boundary line of the vehicle is pressed when the obstacle cuts in. Exemplarily, the timestamp of when the first autonomous driving software predicts that the obstacle has the intention to change lanes is T10, and the timestamp of when the lane boundary line of the vehicle is pressed when the obstacle cuts in based on the scene data is T3; accordingly, the fifth time delay B13 = T3 - T10 can be obtained, wherein the fifth time delay can be understood as the time delay of the first autonomous driving software predicting the obstacle changing lanes.
[0053] As an implementable method, the electronic device can obtain the time delay of reaching the third stage in the process of predicting the obstacle changing lanes to the vehicle's own lane based on the second prediction data, as the sixth time delay. The sixth time delay can be determined based on the timestamp of the second autonomous driving software predicting that the obstacle has the intention to change lanes and the timestamp of the obstacle pressing the lane boundary line of the vehicle when the obstacle cuts in. For example, the timestamp of the second autonomous driving software predicting that the obstacle has the intention to change lanes is T20, and the timestamp of the obstacle pressing the lane boundary line of the vehicle when the obstacle cuts in based on the scene data is T3; accordingly, the sixth time delay B23 = T3 - T20 can be obtained, wherein the sixth time delay can be understood as the time delay of the second autonomous driving software predicting the obstacle changing lanes.
[0054] Step S230: Determine the difference between the delays of each stage based on the delays of the different stages corresponding to the first autonomous driving software and the delays of the different stages corresponding to the second autonomous driving software.
[0055] In some embodiments, after obtaining the time delays for different stages corresponding to the first autonomous driving software and the time delays for different stages corresponding to the second autonomous driving software, the electronic device can determine the difference between the time delays for each stage based on the time delays for the different stages corresponding to the first autonomous driving software and the time delays for the different stages corresponding to the second autonomous driving software. The time delays for different stages corresponding to obstacles predicted by the first autonomous driving software can be stored in an associated manner using the obstacle ID as an index; and the time delays for different stages corresponding to obstacles predicted by the second autonomous driving software can be stored in an associated manner using the obstacle ID as an index. Accordingly, the electronic device can obtain the time delays for each stage of the obstacle predicted by the first autonomous driving software and the second autonomous driving software, respectively, based on the obstacle ID, to determine the difference between the time delays for each stage.
[0056] Step S240: Determine an evaluation result of the second autonomous driving software based on the difference between the time delays of each stage, wherein the evaluation result includes a score for the second autonomous driving software.
[0057] In some embodiments, after obtaining the difference in the time delays at each stage of the obstacle predicted by the first autonomous driving software and the second autonomous driving software, the electronic device may determine an evaluation result for the second autonomous driving software based on the difference in the time delays at each stage. The evaluation result may include a score for the second autonomous driving software.
[0058] For example, if the first time delay of the obstacle predicted by the first autonomous driving software is greater than or equal to the second time delay of the obstacle predicted by the second autonomous driving software, the new version can be determined to have recognized the first probability of the cut-in earlier, and the second autonomous driving software can be awarded a score of 1. If the third time delay of the obstacle predicted by the first autonomous driving software is greater than or equal to the fourth time delay of the obstacle predicted by the second autonomous driving software, the new version can be determined to have recognized the second probability of the cut-in earlier, and the second autonomous driving software can be awarded a score of 1. If the fifth time delay of the obstacle predicted by the first autonomous driving software is less than or equal to the sixth time delay of the obstacle predicted by the second autonomous driving software, the new version can be determined to have indicated the lane change trajectory of the obstacle earlier, based on the lane crossing, and the second autonomous driving software can be awarded a score of 1. Accordingly, the electronic device can determine the score of the second autonomous driving software as the evaluation result of the second autonomous driving software.
[0059] In some embodiments, there are multiple obstacles. Accordingly, the electronic device can input scenario data corresponding to each obstacle into the first autonomous driving software and the second autonomous driving software, respectively, and execute them to obtain first prediction data corresponding to the first autonomous driving software and second prediction data corresponding to the second autonomous driving software. The first prediction data may include a first delay, a third delay, and a fifth delay corresponding to each obstacle, each of which may be stored in association with the ID corresponding to each obstacle. The second prediction data may include a second delay, a fourth delay, and a sixth delay corresponding to each obstacle, each of which may be stored in association with the ID corresponding to each obstacle.
[0060] Accordingly, in determining the evaluation result of the second autonomous driving software, the electronic device may obtain the first, second, third, fourth, fifth, and sixth delays corresponding to each obstacle, obtain the number of obstacles for which the first delay is less than or equal to the second delay as a first number, obtain the number of obstacles for which the third delay is less than or equal to the fourth delay as a second number, and obtain the number of obstacles for which the fifth delay is greater than or equal to the sixth delay as a third number, and obtain a score for the second autonomous driving software as the evaluation result based on the first, second, and third numbers. The score may be positively correlated with the first, second, and third numbers, respectively.
[0061] In the process of obtaining the first number, the electronic device may determine an obstacle with a first delay less than or equal to a second delay as a first obstacle. Furthermore, if it is determined based on the second prediction data that the second autonomous driving software applied a first degree of braking to the ego vehicle at the first timestamp, the first obstacle may be determined as a first obstacle to be counted, and the number of the first obstacles to be counted may be obtained as the first number. The first degree of braking is less than full braking of the ego vehicle. The first timestamp may be the timestamp when the lane change probability of the first obstacle predicted by the second autonomous driving software reaches the first probability. Thus, if it is determined that the new version identifies the first probability of entry earlier and applies limited braking to the ego vehicle under the first probability, the second autonomous driving software may be awarded 1 point.
[0062] In the process of obtaining the second number, the electronic device may determine an obstacle for which the third delay is less than or equal to the fourth delay as the second obstacle. Furthermore, if it is determined based on the second prediction data that the second autonomous driving software applied a second degree of braking to the ego vehicle at the second timestamp, the second obstacle may be determined as the second obstacle to be counted, and the number of the second obstacles to be counted may be obtained as the second number. The second degree of braking is greater than the first degree of braking, such as full braking of the ego vehicle. The second timestamp may be the timestamp when the lane change probability of the second obstacle predicted by the second autonomous driving software reaches the second probability. Thus, if the new version identifies the second probability of entry earlier and full braking of the ego vehicle is applied based on the second probability, the second autonomous driving software may be awarded 1 point.
[0063] Optionally, when the electronic device obtains a score for the second autonomous driving software based on the first, second, and third quantities, it may use the weighted sum of the first, second, and third quantities as the score for the second autonomous driving software. For example, if the first quantity is z1, the weight corresponding to the first quantity is w1; if the second quantity is z2, the weight corresponding to the second quantity is w2; and if the third quantity is z3, the weight corresponding to the third quantity is w3. Accordingly, the score for the second autonomous driving software, S, = w1 × z1 + w2 × z2 + w3 × z3. The weights corresponding to the first, second, and third quantities may be equal or unequal, and are not limited to this.
[0064] As an implementable approach, in consideration of improving the vehicle's ability to defend against danger, the weight corresponding to the first quantity may be greater than the weight corresponding to the second quantity, and may also be greater than the weight corresponding to the third quantity.
[0065] As an implementable approach, in order to improve vehicle safety, the weight corresponding to the second quantity may be greater than the weight corresponding to the first quantity, and may also be greater than the weight corresponding to the third quantity.
[0066] Step S250: If the score is greater than a preset value, the second autonomous driving software is released.
[0067] In some embodiments, the electronic device may be pre-set with a preset value. Accordingly, after obtaining a score for the second autonomous driving software, the electronic device may compare the score with the preset value and, based on the comparison result, determine whether to release the second autonomous driving software. Optionally, the preset value may be set by the user or obtained from third-party experimental data. For example, the preset value may be set by the user to 100%, 90%, 80%, etc.
[0068] As an implementable approach, if the electronic device determines that the second autonomous driving software's score is greater than a preset value, the second autonomous driving software may be released. A score greater than the preset value can be interpreted as indicating that the second autonomous driving software meets release standards. This improves the efficiency of autonomous driving software testing, reduces human interference, and ensures the quality and safety of software releases.
[0069] Step S260: If the score is less than or equal to the preset value, target prompt information is output, wherein the target prompt information is used to prompt that the performance of the second autonomous driving software has degraded.
[0070] As an operative approach, if the electronic device determines that the score of the second autonomous driving software is less than or equal to a preset value, it may output a target prompt message. The fact that the second autonomous driving software's score is less than or equal to the preset value can be interpreted as indicating that the performance of the second autonomous driving software has degraded relative to that of the second autonomous driving software. The target prompt message can be used to indicate the degradation of the second autonomous driving software's performance, enabling the user to optimize and test the second autonomous driving software based on this prompt. The electronic device may output the target prompt message through voice output, interface display, or indicator light, without limitation. This provides real-time feedback to software developers, accelerates product iteration and optimization, reduces software testing time and costs, and improves software quality and security.
[0071] Compared with the software evaluation method provided in the embodiment of the present application, Figure 1The software evaluation method shown in this embodiment can also obtain the time delays of different stages reached by the first autonomous driving software and the second autonomous driving software respectively in the process of predicting the obstacle to change lanes to the self-driving lane based on the first prediction data and the second prediction data, and obtain the time delays of the different stages corresponding to the first autonomous driving software and the time delays of the different stages corresponding to the second autonomous driving software; determine the difference between the time delays of each stage based on the time delays of the different stages corresponding to the first autonomous driving software and the time delays of the different stages corresponding to the second autonomous driving software; determine the evaluation results of the second autonomous driving software based on the difference between the time delays of each stage in the process of changing lanes from the obstacle to the self-driving lane twice before and after the software update, so as to evaluate the updated software, thereby improving the efficiency of autonomous driving software testing and reducing interference from human factors. In this embodiment, the evaluation results may include a score for the second autonomous driving software. In this embodiment, if the score is greater than a preset value, the second autonomous driving software may be released; if the score is less than or equal to the preset value, target prompt information is output, wherein the target prompt information is used to prompt that the performance of the second autonomous driving software has degraded, thereby improving the efficiency of autonomous driving software testing. When it is determined that the software meets the release standards, the software is released. When the software does not meet the release standards, a prompt information of software performance degradation is output, thereby ensuring the quality and security of software release, providing real-time feedback to software developers, accelerating the iteration and optimization process of products, reducing the time and cost of software testing, and improving software quality and security.
[0072] See also Figure 3 , Figure 3 The module block diagram of the software evaluation device provided by an embodiment of the present application is shown. The software evaluation device 200 is applied to the above electronic equipment. Figure 3 The process shown in FIG. 1 is described in detail. The software evaluation device 200 includes: a software running module 210 and a software evaluation module 220, wherein:
[0073] The software running module 210 is used to determine prediction data for an obstacle changing lanes to the own lane based on scene data of an obstacle cutting into the own lane through first and second autonomous driving software, respectively, to obtain first prediction data corresponding to the first autonomous driving software and second prediction data corresponding to the second autonomous driving software, wherein the prediction data includes time information at different stages of the process of predicting the obstacle changing lanes to the own lane. The second autonomous driving software is obtained after updating the first autonomous driving software.
[0074] The software evaluation module 220 is used to evaluate the second autonomous driving software based on the first prediction data and the second prediction data to obtain an evaluation result.
[0075] Furthermore, the software evaluation module 220 may include: a delay acquisition unit for different stages, a delay difference acquisition unit for the same stage, and a software evaluation sub-unit, wherein:
[0076] The unit for obtaining time delays at different stages is configured to obtain, based on the first prediction data and the second prediction data, the time delays at different stages predicted by the first autonomous driving software and the second autonomous driving software in the process of changing lanes from the obstacle to the self-lane, thereby obtaining the time delays at different stages corresponding to the first autonomous driving software and the time delays at different stages corresponding to the second autonomous driving software.
[0077] The delay difference acquisition unit in the same stage is used to determine the difference between the delays in each stage based on the delays in the different stages corresponding to the first autonomous driving software and the delays in the different stages corresponding to the second autonomous driving software.
[0078] The software evaluation subunit is used to determine the evaluation result of the second autonomous driving software based on the difference between the delays in each stage.
[0079] Furthermore, the delay acquisition units at different stages may include: a first delay acquisition unit, a second delay acquisition unit, a third delay acquisition unit, a fourth delay acquisition unit, a fifth delay acquisition unit, and a sixth delay acquisition unit, wherein:
[0080] a first time delay acquisition unit, configured to acquire, based on the first prediction data, a time delay predicted to reach a first stage in the process of the obstacle changing lanes to the own lane, as a first time delay, wherein the first stage is a stage in which the lane changing probability of the obstacle reaches a first probability, and the first time delay is determined based on a timestamp when the first autonomous driving software predicts that the obstacle has a lane changing intention and a timestamp when the predicted lane changing probability of the obstacle reaches the first probability.
[0081] A second time delay acquisition unit is configured to acquire, based on the second prediction data, a time delay for the obstacle to reach the first stage during the process of changing lanes to the own lane, as a second time delay, wherein the second time delay is determined based on a timestamp when the second autonomous driving software predicts that the obstacle has a lane changing intention and a timestamp when the predicted lane changing probability of the obstacle reaches the first probability.
[0082] A third time delay acquisition unit is configured to acquire, based on the first prediction data, a time delay predicted to reach the second stage in the process of the obstacle changing lanes to the own lane, as a third time delay, wherein the second stage is a stage in which the lane changing probability of the obstacle reaches a second probability, and the second probability is greater than the first probability. The third time delay is determined based on a timestamp when the first autonomous driving software predicts that the obstacle has a lane changing intention and a timestamp when the predicted lane changing probability of the obstacle reaches the second probability.
[0083] a fourth time delay acquisition unit, configured to acquire, based on the second prediction data, a time delay for the obstacle to reach the second stage during the process of changing lanes to the own lane, as a fourth time delay, wherein the fourth time delay is determined based on a timestamp of when the second autonomous driving software predicts that the obstacle has a lane-changing intention and a timestamp of when the predicted lane-changing probability of the obstacle reaches the second probability.
[0084] A fifth time delay acquisition unit is configured to acquire, based on the first prediction data, a time delay predicted to be reached in the third stage during the process of the obstacle changing lanes to the own lane, as the fifth time delay, wherein the third stage is the stage of pressing the lane boundary line of the own vehicle when the obstacle cuts in, and the fifth time delay is determined based on the timestamp of the obstacle's lane change intention predicted by the first autonomous driving software and the timestamp of pressing the lane boundary line of the own vehicle when the obstacle cuts in.
[0085] a sixth time delay acquisition unit, configured to acquire, based on the second prediction data, a time delay for the obstacle to reach the third stage during the process of changing lanes to the own lane, as a sixth time delay, wherein the sixth time delay is determined based on a timestamp of when the second autonomous driving software predicts that the obstacle has an intention to change lanes and a timestamp of when the obstacle cuts into the own vehicle's lane boundary.
[0086] Furthermore, there are multiple obstacles, and the software evaluation subunit may include: an obstacle delay acquisition unit, a first quantity acquisition unit, a second quantity acquisition unit, a third quantity acquisition unit, and a software scoring unit, wherein:
[0087] The obstacle delay acquisition unit is used to obtain the first delay, second delay, third delay, fourth delay, fifth delay and sixth delay corresponding to each obstacle.
[0088] The first quantity acquisition unit is configured to acquire, as the first quantity, the number of obstacles whose first delay is less than or equal to the second delay.
[0089] The second quantity acquiring unit is configured to acquire, as the second quantity, the number of obstacles for which the third time delay is less than or equal to the fourth time delay.
[0090] The third quantity acquiring unit is configured to acquire, as a third quantity, the number of obstacles for which the fifth time delay is greater than or equal to the sixth time delay.
[0091] A software scoring unit is used to obtain a score for the second autonomous driving software based on the first number, the second number, and the third number, as the evaluation result, the score being positively correlated with the first number, the second number, and the third number, respectively.
[0092] Furthermore, the first quantity acquisition unit may include: a first obstacle determination unit, a first obstacle to be counted determination unit, and a first quantity acquisition subunit, wherein:
[0093] The first obstacle determining unit is configured to determine an obstacle whose first delay is less than or equal to the second delay as a first obstacle.
[0094] The first obstacle determination unit to be counted is configured to determine the first obstacle as the first obstacle to be counted if it is determined based on the second prediction data that the second autonomous driving software brakes the vehicle to a first degree at a first timestamp. The first timestamp is the timestamp when the lane change probability of the first obstacle predicted by the second autonomous driving software reaches the first probability.
[0095] The first quantity acquisition subunit is configured to acquire the quantity of the first obstacles to be counted as the first quantity.
[0096] Furthermore, the second quantity acquisition unit may include: a second obstacle determination unit, a second obstacle to be counted determination unit, and a second quantity acquisition subunit, wherein:
[0097] The second obstacle determining unit is configured to determine an obstacle whose third delay is less than or equal to the fourth delay as a second obstacle.
[0098] The second obstacle determination unit is configured to determine the second obstacle as the second obstacle to be counted if it is determined based on the second prediction data that the second autonomous driving software brakes the vehicle to a second degree at a second timestamp. The second timestamp is the timestamp when the lane change probability of the second obstacle predicted by the second autonomous driving software reaches the second probability.
[0099] The second quantity obtaining subunit is configured to obtain the quantity of the second obstacles to be counted as the second quantity.
[0100] Furthermore, the evaluation result includes a score for the second autonomous driving software. The software evaluation device 200 may further include: a software release unit and a performance degradation prompt unit, wherein:
[0101] A software publishing unit is configured to publish the second autonomous driving software if the score is greater than a preset value.
[0102] A performance degradation prompt unit is used to output target prompt information if the score is less than or equal to the preset value, wherein the target prompt information is used to prompt that the performance of the second autonomous driving software has degraded.
[0103] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the above-described devices and modules can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0104] In several embodiments provided in this application, the coupling between modules may be electrical, mechanical or other forms of coupling.
[0105] In addition, the functional modules in the various embodiments of the present application may be integrated into a processing module, or each module may exist physically separately, or two or more modules may be integrated into a single module. The above-mentioned integrated modules may be implemented in the form of hardware or software functional modules.
[0106] See also Figure 4 , which shows a structural block diagram of an electronic device provided in an embodiment of the present application. The electronic device 100 can be a vehicle with processing capabilities, such as an electric vehicle, a gasoline vehicle, a robot, an intelligent transportation device, etc. The electronic device 100 in the present application may include one or more of the following components: a processor 110, a memory 120, and one or more application programs, wherein the one or more application programs can be stored in the memory 120 and configured to be executed by one or more processors 110, and the one or more programs are configured to execute the method described in the aforementioned method embodiment.
[0107] The processor 110 may include one or more processing cores. The processor 110 utilizes various interfaces and circuits to connect various components within the vehicle 100. It executes instructions, programs, code sets, or instruction sets stored in the memory 120, as well as accesses data stored in the memory 120, to perform various functions and process data within the vehicle 100. Optionally, the processor 110 may be implemented using at least one of the following hardware forms: a digital signal processing (DSP), a field-programmable gate array (FPGA), or a programmable logic array (PLA). The processor 110 may integrate one or a combination of a central processing unit (CPU), a graphics processing unit (GPU), and a modem. The CPU primarily processes the operating system, user interface, and application programs; the GPU is responsible for rendering and drawing displayed content; and the modem handles wireless communications. It is understood that the modem may not be integrated into the processor 110 but may be implemented separately via a communications chip.
[0108] The memory 120 may include a random access memory (RAM) or a read-only memory (ROM). The memory 120 may be used to store instructions, programs, codes, code sets, or instruction sets. The memory 120 may include a program storage area and a data storage area, wherein the program storage area may store instructions for implementing an operating system, instructions for implementing at least one function (such as a touch function, a sound playback function, an image playback function, etc.), instructions for implementing the following various method embodiments, etc. The data storage area may also store data created by the electronic device 100 during use (such as a phone book, audio and video data, chat history data), etc.
[0109] See also Figure 5 , which shows a block diagram of a computer-readable storage medium provided in an embodiment of the present application. The computer-readable medium 300 stores program code, which can be called by a processor to execute the method described in the above method embodiment.
[0110] The computer-readable storage medium 300 can be an electronic memory such as a flash memory, an EEPROM (Electrically Erasable Programmable Read-Only Memory), an EPROM, a hard disk, or a ROM. Alternatively, the computer-readable storage medium 300 includes a non-transitory computer-readable storage medium. The computer-readable storage medium 300 has storage space for program code 310 for executing any of the method steps in the above method. These program codes can be read from or written to one or more computer program products. The program code 310 can be compressed, for example, in a suitable form.
[0111] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. A software evaluation method, characterized in that: The method comprises: Determining, using first and second autonomous driving software, prediction data for an obstacle changing lanes into the own lane based on scenario data of an obstacle cutting into the own lane, thereby obtaining first prediction data corresponding to the first autonomous driving software and second prediction data corresponding to the second autonomous driving software, the prediction data including time information for different stages of the predicted obstacle changing lanes into the own lane. The second autonomous driving software is obtained by updating the first autonomous driving software. The second autonomous driving software is evaluated based on the first prediction data and the second prediction data to obtain an evaluation result.
2. The method according to claim 1, characterized in that The evaluating the second autonomous driving software according to the first prediction data and the second prediction data to obtain an evaluation result includes: Obtaining, based on the first prediction data and the second prediction data, respectively, time delays at different stages predicted by the first autonomous driving software and the second autonomous driving software during a process of changing lanes from the obstacle to the own lane, and obtaining the time delays at the different stages corresponding to the first autonomous driving software and the time delays at the different stages corresponding to the second autonomous driving software; Determining a difference between the time delays of each stage based on the time delays of the different stages corresponding to the first autonomous driving software and the time delays of the different stages corresponding to the second autonomous driving software; An evaluation result of the second autonomous driving software is determined based on the difference between the time delays in each stage.
3. The method according to claim 2, characterized in that The method further comprises: obtaining, based on the first prediction data and the second prediction data, time delays at different stages predicted by the first autonomous driving software and the second autonomous driving software in a process of changing lanes from the obstacle to the self-driving lane, and obtaining the time delays at different stages corresponding to the first autonomous driving software and the time delays at different stages corresponding to the second autonomous driving software, including: Obtaining, based on the first prediction data, a predicted time delay for the obstacle to reach a first stage during a lane change process to the own lane, as a first time delay, wherein the first stage is a stage at which a lane change probability of the obstacle reaches a first probability, and the first time delay is determined based on a timestamp of when the first autonomous driving software predicts that the obstacle has a lane change intention and a timestamp of when the predicted lane change probability of the obstacle reaches the first probability; Obtaining, based on the second prediction data, a predicted time delay for the obstacle to reach the first stage during the process of changing lanes to the own lane as a second time delay, wherein the second time delay is determined based on a timestamp when the second autonomous driving software predicts that the obstacle has a lane-changing intention and a timestamp when the predicted lane-changing probability of the obstacle reaches the first probability; Obtaining, based on the first prediction data, a time delay for the obstacle to reach a second stage during a lane change process into the own lane as a third time delay, wherein the second stage is a stage at which a lane change probability of the obstacle reaches a second probability, the second probability being greater than the first probability, and the third time delay is determined based on a timestamp of when the first autonomous driving software predicts that the obstacle has a lane change intention and a timestamp of when the predicted lane change probability of the obstacle reaches the second probability; Obtaining, based on the second prediction data, a predicted time delay for the obstacle to reach the second stage during the process of changing lanes to the own lane as a fourth time delay, wherein the fourth time delay is determined based on a timestamp when the second autonomous driving software predicts that the obstacle has a lane-changing intention and a timestamp when the predicted lane-changing probability of the obstacle reaches the second probability; Obtaining, based on the first prediction data, a predicted time delay of reaching the third stage during the process of the obstacle changing lanes to the own lane as a fifth time delay, wherein the third stage is a stage of pressing the lane boundary line of the own vehicle when the obstacle cuts in, and the fifth time delay is determined based on a timestamp of when the first autonomous driving software predicts that the obstacle has a lane-changing intention and a timestamp of when the obstacle presses the lane boundary line of the own vehicle when the obstacle cuts in; Based on the second prediction data, the time delay for the obstacle to reach the third stage during the process of changing lanes to the own lane is obtained as the sixth time delay, wherein the sixth time delay is determined based on the timestamp when the second autonomous driving software predicts that the obstacle has the intention to change lanes and the timestamp when the obstacle presses the lane boundary line of the own vehicle when cutting in.
4. The method according to claim 3, characterized in that There are multiple obstacles, and determining the evaluation result of the second autonomous driving software based on the difference between the time delays in each stage includes: Obtaining the first delay, second delay, third delay, fourth delay, fifth delay, and sixth delay corresponding to each obstacle; Obtaining the number of obstacles for which the first delay is less than or equal to the second delay as the first number; Obtaining the number of obstacles for which the third delay is less than or equal to the fourth delay as the second number; Obtaining the number of obstacles for which the fifth delay is greater than or equal to the sixth delay as the third number; Based on the first number, the second number, and the third number, a score for the second autonomous driving software is obtained as the evaluation result, and the score is in positive phase with the first number, the second number, and the third number, respectively.
5. The method according to claim 4, characterized in that The acquiring, as the first number, the number of obstacles for which the first delay is less than or equal to the second delay includes: Determine an obstacle whose first delay is less than or equal to the second delay as a first obstacle; If it is determined based on the second prediction data that the second autonomous driving software brakes the ego vehicle to a first degree at a first timestamp, the first obstacle is determined as a first obstacle to be counted, and the first timestamp is the timestamp when the lane change probability of the first obstacle predicted by the second autonomous driving software reaches the first probability; The number of the first obstacles to be counted is obtained as the first number.
6. The method according to claim 4, characterized in that The obtaining, as the second number, the number of obstacles for which the third delay is less than or equal to the fourth delay includes: Determine an obstacle with a third delay less than or equal to a fourth delay as a second obstacle; If it is determined based on the second prediction data that the second autonomous driving software brakes the ego vehicle to a second degree at a second timestamp, the second obstacle is determined as a second obstacle to be counted, and the second timestamp is the timestamp when the lane change probability of the second obstacle predicted by the second autonomous driving software reaches the second probability; The number of the second obstacles to be counted is obtained as the second number.
7. The method according to any one of claims 1 to 6, characterized in that The evaluation result includes a score for the second autonomous driving software, and the method further includes: If the score is greater than a preset value, the second autonomous driving software is released; If the score is less than or equal to the preset value, target prompt information is output, wherein the target prompt information is used to prompt that the performance of the second autonomous driving software has degraded.
8. A software evaluation device, characterized in that: The device comprises: a software execution module for determining, using first and second autonomous driving software, prediction data for an obstacle changing lanes into the own lane based on scenario data of an obstacle cutting into the own lane, to obtain first prediction data corresponding to the first autonomous driving software and second prediction data corresponding to the second autonomous driving software, the prediction data including time information for different stages of the predicted obstacle changing lanes into the own lane, wherein the second autonomous driving software is obtained by updating the first autonomous driving software; The software evaluation module is used to evaluate the second autonomous driving software based on the first prediction data and the second prediction data to obtain an evaluation result.
9. An electronic device, characterized in that: include: one or more processors; Memory; One or more application programs, wherein the one or more application programs are stored in the memory and configured to be executed by the one or more processors, and the one or more programs are configured to execute the method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores program code, which can be called by a processor to execute the method according to any one of claims 1 to 7.