Driving animation rendering method and device, equipment and storage medium

By generating layers to be rendered and a driving animation view window, and using the vehicle's relative position information to render the layers in real time, the problem of driving animation not being able to update dynamically is solved, improving the playback effect and interactivity of driving animation.

CN115631266BActive Publication Date: 2026-06-05GUANGZHOU WERIDE TECH LTD CO

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
GUANGZHOU WERIDE TECH LTD CO
Filing Date
2022-09-23
Publication Date
2026-06-05

AI Technical Summary

Technical Problem

In existing technologies, driving animations cannot dynamically update layers, resulting in poor playback quality and an inability to reflect changes in maps and obstacles in driving data in real time.

Method used

By creating a driving animation rendering task, based on the target road test data and the driving animation rendering task, a layer to be rendered and a driving animation view window are generated. Using the relative position information of the target vehicle and the variables of the current frame, the layer is rendered in real time, generating rich interactive information and dynamically updated driving animation.

Benefits of technology

It enables real-time rendering of driving animations, enriches interactive information, improves the playback effect of driving animations, and can dynamically update layers to reflect multi-dimensional information during the driving process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115631266B_ABST
    Figure CN115631266B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of automatic driving, and discloses a driving animation rendering method, device, equipment and storage medium. The method creates a driving animation rendering task, and based on target road test data and the driving animation rendering task, a variable for representing a current frame is created; a to-be-rendered layer and a driving animation view window are created based on the target road test data, and the relative position information of a target vehicle is determined according to the absolute position information of a preset layer; based on the relative position information of the target vehicle, the variable of the current frame and the sequence of the to-be-rendered layer, the to-be-rendered layer is real-time rendered in the driving animation view window, and a driving animation is generated. The application processes the road test data, generates rich interaction information, dynamically updates the driving animation of the layer, and improves the playing effect of the driving animation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of autonomous driving technology, and in particular to a method, apparatus, device, and storage medium for rendering driving animation. Background Technology

[0002] With the development of autonomous driving technology, the current use of traditional videos (such as MP4) to play driving animations has the following problems: First, only very simple interactions are possible, such as dragging the playback progress bar, pausing or resuming playback; second, changes in driving data such as maps and surrounding obstacles are difficult to be updated in real time and reflected in the video animation, and the video file needs to be regenerated before it can be played.

[0003] Therefore, how to provide rich interactive features to facilitate users to view multi-dimensional driving information and discover various existing or potential risks during driving, and improve the effect of driving animation playback, has become a technical problem that needs to be solved by those skilled in the art. Summary of the Invention

[0004] The main objective of this invention is to solve the technical problem in the prior art that driving animations cannot be dynamically updated and have poor playback effects.

[0005] The first aspect of the present invention provides a driving animation rendering method, comprising: creating a driving animation rendering task according to a received driving animation rendering request, and creating a variable to represent the current frame based on target road test data and the driving animation rendering task; creating a layer to be rendered and a driving animation view window based on the target road test data, and loading the layer to be rendered into the driving animation view window; determining the relative position information of a target vehicle based on the absolute position information of the preset layer; and rendering the layer to be rendered in real time in the driving animation view window based on the relative position information of the target vehicle, the variable of the current frame, and the order of the layers to be rendered, thereby generating a driving animation.

[0006] Optionally, in a first implementation of the first aspect of the present invention, before creating a driving animation rendering task based on the received driving animation rendering request and creating a variable to represent the current frame based on the target road test data and the driving animation rendering task, the method further includes: acquiring vehicle autonomous driving data collected by vehicle sensing devices and performing fusion processing on the vehicle autonomous driving data to obtain target driving data; dividing driving scenarios based on the target driving data and determining the mapping relationship between the driving scenarios and the target driving data; and extracting data segments corresponding to the driving scenarios from the target driving data based on the mapping relationship to obtain original road test data.

[0007] Optionally, in a second implementation of the first aspect of the present invention, the step of fusing the vehicle autonomous driving data to obtain target driving data includes: determining a standard sensing device based on a preset data acquisition rule; traversing the data frames of the vehicle autonomous driving data based on the standard sensing device, and performing time matching between the timestamp of the standard sensing device and the data frames of the vehicle autonomous driving data to obtain the data frame closest to the timestamp of the standard sensing device as the target sensor data;

[0008] The target sensing data is fused to obtain target driving data.

[0009] Optionally, in a third implementation of the first aspect of the present invention, after extracting the data fragment corresponding to the driving scenario from the target driving data based on the mapping relationship to obtain the original road test data, the method further includes: performing coarse clustering on the original road test data based on a preset clustering algorithm to obtain multiple clusters; pruning and merging the multiple clusters using a threshold pruning algorithm to obtain a target classification cluster; performing data anomaly detection on the target classification cluster based on a preset outlier detection algorithm to obtain the anomaly degree of the target classification cluster; determining the abnormal data in the original road test data according to the anomaly degree, and removing the abnormal data to obtain the target road test data.

[0010] Optionally, in a fourth implementation of the first aspect of the present invention, the step of creating a driving animation rendering task based on the received driving animation rendering request includes: determining a task name, target vehicle data, and the driving time of the target vehicle based on the driving animation rendering request; and creating a driving animation rendering task based on the task name, the target vehicle data, and the driving time of the target vehicle.

[0011] Optionally, in a fifth implementation of the first aspect of the present invention, loading the layer to be rendered into the driving animation view window includes: loading the layer to be rendered into a preset layer manager, wherein the layer to be rendered includes a map layer, a road layer, a vehicle layer, and an obstacle layer; determining the rendering engine corresponding to each of the layers to be rendered, and associating the rendering engine with the layer rendering manager; determining the layer state corresponding to each of the layers to be rendered, and loading the layer to be rendered into the driving animation view window according to the layer state.

[0012] Optionally, in a sixth implementation of the first aspect of the present invention, the step of rendering the layers to be rendered in real time in the driving animation view window based on the relative position information of the target vehicle, the variables of the current frame, and the order of the layers to be rendered to generate a driving animation includes: traversing the layer states corresponding to each layer to be rendered based on the driving animation rendering request; determining whether the layer state is within the driving animation view window and the rendering caching mechanism is enabled based on the variables of the current frame and the order of the layers to be rendered; if so, determining the data to be drawn corresponding to each layer to be rendered; creating a layer buffer corresponding to the layer to be rendered; calling the rendering engine corresponding to the layer to be rendered to perform parallel rendering of the data to be drawn, obtaining a rendered frame image and saving the rendered frame image to the layer buffer; when the layer states corresponding to all layers to be rendered are displayed as rendered complete, loading the rendered frame image in the layer buffer into the layer buffer of the driving animation view window; and preprocessing the rendered frame image loaded into the layer buffer of the driving animation view window based on the relative position information of the target vehicle to generate a driving animation.

[0013] A second aspect of the present invention provides a driving animation rendering apparatus, comprising: a creation module, configured to create a driving animation rendering task according to a received driving animation rendering request, and to create a variable representing the current frame based on target road test data and the driving animation rendering task; a loading module, configured to create a layer to be rendered and a driving animation view window based on the target road test data, and to load the layer to be rendered into the driving animation view window; a first determining module, configured to determine the relative position information of a target vehicle based on the absolute position information of the preset layer; and a rendering module, configured to render the layer to be rendered in real time in the driving animation view window based on the relative position information of the target vehicle, the variable of the current frame, and the order of the layers to be rendered, thereby generating a driving animation.

[0014] Optionally, in a first implementation of the second aspect of the present invention, the driving animation rendering device further includes: a fusion module, used to acquire vehicle autonomous driving data collected by vehicle sensing devices, and to perform fusion processing on the vehicle autonomous driving data to obtain target driving data; a second determination module, used to divide driving scenarios based on the target driving data and determine the mapping relationship between the driving scenarios and the target driving data; and an extraction module, used to extract data segments corresponding to the driving scenarios from the target driving data based on the mapping relationship to obtain raw road test data.

[0015] Optionally, in a second implementation of the second aspect of the present invention, the fusion module is specifically used for: determining a standard sensing device based on a preset data acquisition rule; traversing the data frames of the vehicle autonomous driving data based on the standard sensing device, and performing time matching between the timestamp of the standard sensing device and the data frames of the vehicle autonomous driving data to obtain the data frame whose time is closest to the corresponding timestamp of the standard sensing device as the target sensor data; and performing fusion processing on the target sensing data to obtain target driving data.

[0016] Optionally, in a third implementation of the second aspect of the present invention, the driving animation rendering device further includes: a clustering module, used to perform coarse clustering on the original road test data based on a preset clustering algorithm to obtain multiple clusters; a pruning module, used to prune and merge the multiple clusters using a threshold pruning algorithm to obtain a target classification cluster; a detection module, used to perform data anomaly detection on the target classification cluster based on a preset outlier detection algorithm to obtain the anomaly degree of the target classification cluster; and a removal module, used to determine the abnormal data in the original road test data according to the anomaly degree and remove the abnormal data to obtain the target road test data.

[0017] Optionally, in a fourth implementation of the second aspect of the present invention, the creation module is specifically used to: determine the task name, target vehicle data, and driving time of the target vehicle according to the driving animation rendering request; and create a driving animation rendering task based on the task name, the target vehicle data, and the driving time of the target vehicle.

[0018] Optionally, in a fifth implementation of the second aspect of the present invention, the loading module includes: a loading unit, configured to load the layer to be rendered into a preset layer manager, wherein the layer to be rendered includes a map layer, a road layer, a vehicle layer, and an obstacle layer; an association unit, configured to determine the rendering engine corresponding to each of the layers to be rendered, and associate the rendering engine with the layer rendering manager; and a determining unit, configured to determine the layer state corresponding to each of the layers to be rendered, and load the layer to be rendered into the driving animation view window according to the layer state.

[0019] Optionally, in the sixth implementation of the second aspect of the present invention, the rendering module is specifically used for: traversing the layer states corresponding to each layer to be rendered based on the driving animation rendering request; determining whether the layer state is within the driving animation view window and the rendering cache mechanism is enabled based on the variables of the current frame and the order of the layers to be rendered; if so, determining the data to be drawn corresponding to each layer to be rendered; creating a layer buffer corresponding to the layer to be rendered; calling the rendering engine corresponding to the layer to be rendered to perform parallel rendering of the data to be drawn, obtaining a rendering frame image and saving the rendering frame image to the layer buffer; when the layer states corresponding to all layers to be rendered are displayed as rendering complete, loading the rendering frame image in the layer buffer into the layer buffer of the driving animation view window; and preprocessing the rendering frame image loaded into the layer buffer of the driving animation view window based on the relative position information of the target vehicle to generate a driving animation.

[0020] A third aspect of the present invention provides a driving animation rendering device, comprising: a memory and at least one processor, wherein the memory stores instructions, and the memory and the at least one processor are interconnected via a line;

[0021] The at least one processor invokes the instructions in the memory to cause the driving animation rendering device to execute the various steps of the driving animation rendering method described above.

[0022] A fourth aspect of the present invention provides a computer-readable storage medium storing instructions that, when executed on a computer, cause the computer to perform the steps of the above-described driving animation rendering method.

[0023] The technical solution provided by this invention involves creating a driving animation rendering task and, based on the target road test data and the driving animation rendering task, creating a variable to represent the current frame; creating a layer to be rendered and a driving animation view window based on the target road test data, and determining the relative position information of the target vehicle according to the absolute position information of the preset layer; and, based on the relative position information of the target vehicle, the variable of the current frame, and the order of the layers to be rendered, rendering the layers to be rendered in real time in the driving animation view window to generate a driving animation. This invention improves the driving animation playback effect by processing road test data to generate rich interactive information and dynamically updating the driving animation of the layers. Attached Figure Description

[0024] Figure 1 A schematic diagram of the first embodiment of the driving animation rendering method provided by the present invention;

[0025] Figure 2A schematic diagram of a second embodiment of the driving animation rendering method provided by the present invention;

[0026] Figure 3 A schematic diagram of the third embodiment of the driving animation rendering method provided by the present invention;

[0027] Figure 4 A schematic diagram of the first embodiment of the vehicle animation rendering device provided by the present invention;

[0028] Figure 5 This is a schematic diagram of a second embodiment of the driving animation rendering device provided by the present invention;

[0029] Figure 6 This is a schematic diagram of an embodiment of the vehicle animation rendering device provided by the present invention. Detailed Implementation

[0030] This invention provides a method, apparatus, device, and storage medium for rendering driving animation. The technical solution of this invention first creates a driving animation rendering task and, based on target road test data and the task, creates a variable to represent the current frame. Based on the target road test data, it creates a layer to be rendered and a driving animation view window, and determines the relative position information of the target vehicle according to the absolute position information of the preset layers. Based on the relative position information of the target vehicle, the variable of the current frame, and the order of the layers to be rendered, the layer to be rendered is rendered in real time in the driving animation view window to generate a driving animation. This invention processes road test data to generate rich interactive information, dynamically updates the driving animation of the layers, and improves the playback effect of driving animation.

[0031] The terms "first," "second," "third," "fourth," etc. (if present) in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" or "having" and any variations thereof are intended to cover a non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.

[0032] For ease of understanding, the specific process of the embodiments of the present invention is described below. Please refer to [link / reference]. Figure 1 The first embodiment of the driving animation rendering method in this invention includes:

[0033] 101. Create a driving animation rendering task based on the received driving animation rendering request, and create a variable to represent the current frame based on the target road test data and the driving animation rendering task;

[0034] In this embodiment, the terminal device first obtains a vehicle driving animation rendering request and creates a driving animation rendering task based on the request. Next, using the latitude and longitude contained in the target road test data, points are marked on the map using external methods provided by the map. Finally, straight lines are connected between any two points to form a driving trajectory. The driving trajectory supports animation playback. The key to the driving trajectory animation playback function is the position of the points between the two lines, i.e., latitude and longitude. An algorithm calculates the latitude and longitude of each point at the same distance along the trajectory, and then dynamically connects each point, connecting them at regular intervals to create a continuously connected animation effect. The animation ends when all points are connected.

[0035] In this embodiment, the following steps are taken: obtaining a vehicle driving animation rendering request; creating a driving animation rendering task based on the vehicle driving animation rendering request; searching the database for vehicle driving trajectory data corresponding to the license plate number in the driving animation rendering task; deduplicating the vehicle driving trajectory data of the corresponding vehicle to obtain valid driving trajectory data sorted by time; and drawing and displaying the vehicle driving trajectory on a map based on the valid driving trajectory data.

[0036] 102. Create a layer to be rendered and a driving animation view window based on the target road test data, and load the layer to be rendered into the driving animation view window;

[0037] In this embodiment, the layer to be rendered refers to a layer that provides the function of wrapping the data source to be rendered, such as a vector data layer, a tile data layer, or a custom data layer. After determining the data source to be rendered, a layer to be rendered can be created for each data source, and a driving animation view window can be created to prepare for rendering the layer to be rendered in the driving animation view window.

[0038] After creating the driving animation view window, all layers to be rendered can be loaded into the driving animation view window to register the status of each layer and the type of rendering engine.

[0039] 103. Determine the relative position information of the target vehicle based on the absolute position information of the preset layer;

[0040] In this embodiment, after receiving the returned data, a variable representing the current frame is created. This variable changes as the user manually drags the playback progress bar on the interface. When the user clicks the play button, the variable automatically increments periodically to achieve continuous animation playback. For each change in the frame variable, the system clears the previous screen and redraws the frame.

[0041] For each frame of rendering, a specific layer order (map layer, road layer, vehicle layer, obstacle layer) must be followed to meet the rendering requirements of autonomous driving scenarios. Since users often focus more on information related to the vehicle's surroundings in autonomous driving scenarios, the system will render the vehicle in the center of the screen. At this time, the position information of other layers (originally absolute position information in the data) is converted into relative position information relative to the vehicle. Then, through coordinate system translation and rotation operations, information that originally required complex calculations, such as object deflection angles, can be rendered more easily.

[0042] 104. Based on the relative position information of the target vehicle, the variables of the current frame, and the order of the layers to be rendered, the layers to be rendered are rendered in real time in the driving animation view window to generate driving animation.

[0043] In this embodiment, upon receiving a global rendering command, the layer states corresponding to each layer to be rendered are traversed. If the layer state is displayed within the driving animation view window and the rendering cache mechanism is enabled, the data to be drawn corresponding to each layer to be rendered can be determined through spatial query. Among them, the second data to be drawn is within a preset scale range and the layer state is visible. A layer buffer corresponding to the layer to be rendered is created, the rendering engine corresponding to the layer to be rendered is called, and each second data to be drawn is rendered in parallel to obtain at least one second rendered image and save it to the layer buffer.

[0044] If all layers are displayed as rendered complete, then all the second rendered images in the layer buffer can be loaded into the view buffer of the driving animation view window; the view listener in the driving animation view window can then be used to retrieve all the second rendered images in the view buffer and combine them in the order of the layers to generate the driving animation.

[0045] In this embodiment of the invention, a driving animation rendering task is created, and a variable representing the current frame is created based on the target road test data and the driving animation rendering task. A layer to be rendered and a driving animation view window are created based on the target road test data, and the relative position information of the target vehicle is determined according to the absolute position information of the preset layers. Based on the relative position information of the target vehicle, the variable of the current frame, and the order of the layers to be rendered, the layers to be rendered are rendered in real time in the driving animation view window to generate a driving animation. This invention processes road test data to generate rich interactive information, dynamically updates the driving animation of the layers, and improves the playback effect of driving animations.

[0046] Please see Figure 2 The second embodiment of the driving animation rendering method in this invention includes:

[0047] 201. Determine standard sensing devices based on preset data acquisition rules;

[0048] In this embodiment, vehicle sensing devices generally include cameras, lidar, millimeter-wave radar, IMU inertial navigation systems, etc., to acquire driving data collected by vehicle sensing devices and signal data transmitted in the vehicle CAN (Controller Area Network) bus, and to analyze the user's driving behavior characteristics in different scenarios based on these data.

[0049] Specifically, based on the sampling frequency of each sensor, the data with the highest sampling frequency is used as the reference sampling sensor. The data frames of the other sensors are traversed, and the timestamp of the reference sampling sensor is matched with the timestamp of the other sensor data frames. The data frame with the closest time is used as the sensor data under the current timestamp and fused with the current timestamp data of the reference sampling sensor.

[0050] 202. Based on the standard sensing device, traverse the data frames of the vehicle autonomous driving data, and match the timestamp of the standard sensing device with the data frames of the vehicle autonomous driving data to obtain the data frame with the time closest to the corresponding timestamp of the standard sensing device as the target sensor data.

[0051] In this embodiment, driving scenarios are divided into highway and urban road scenarios based on common scenario types, such as turning, going straight, following, and overtaking. Specifically, the mapping relationship between driving scenarios and fused data is analyzed and determined. Scene extraction rules are designed based on strongly correlated signals, and scene data fragments are extracted from the fused data according to these rules.

[0052] For a specific scenario, the correlation between the fused data and the scenario is analyzed. For example, in an overtaking scenario, the data collected by the sensors may change within a certain period of time. In this case, the fused data corresponding to that period of time can be extracted as the data segment for the overtaking scenario. The correlation between the scenario and driving data can be determined based on common sense or theoretical analysis. Once a relationship is determined, the corresponding data segment can be selected. Generally, data features are extracted, and the data frames of the vehicle's autonomous driving data are traversed based on standard sensing devices. The timestamps of the standard sensing devices are time-matched with the data frames of the vehicle's autonomous driving data, and the data frame with the closest timestamp to the corresponding time of the standard sensing device is obtained as the target sensor data.

[0053] 203. The target sensor data is fused to obtain the target driving data;

[0054] In this embodiment, driving data collected by vehicle sensors and the vehicle CAN bus is acquired, and the driving data is fused based on the timestamp of a reference sensor. The fusion of the driving data based on the timestamp of the reference sensor includes: using the sensor with the highest sampling frequency as the reference sensor; traversing the data frames of the remaining sensors; matching the timestamp of the reference sensor with the timestamp of the remaining sensors; using the data frame from the remaining sensors whose timestamp is closest to that of the reference sensor as the current sensor data; and fusing the current sensor data with the current timestamp data of the reference sensor, i.e., performing fusion processing on the target sensor data to obtain the target driving data.

[0055] 204. Based on the target driving data, segment driving scenarios and determine the mapping relationship between driving scenarios and target driving data;

[0056] In this embodiment, the mapping relationship between driving scenarios and fused data is analyzed and determined. Scene extraction rules are designed based on strongly correlated signals. Scene data fragments are extracted from the fused data according to the extraction rules.

[0057] 205. Based on the mapping relationship, extract the data segments corresponding to the driving scenario from the target driving data to obtain the original road test data;

[0058] In this embodiment, based on the mapping relationship, target feature values ​​are extracted from the data fragments, the Weber distribution parameters of each feature value are obtained, the feature values ​​are divided into equal bins, the quantiles in each bin are obtained, and after connecting the same quantiles in each bin, the Weber distribution curve corresponding to the feature value is obtained by linear regression fitting; wherein, abnormal feature values ​​in each group of feature values ​​are deleted by the quartile method.

[0059] Optionally, target feature values ​​can be extracted from the data segments corresponding to the driving scenario by analyzing the combination of feature values ​​based on the driving scenario.

[0060] 206. Based on the preset clustering algorithm, the original road test data is coarsely clustered to obtain multiple clusters. The multiple clusters are then pruned and merged using a threshold pruning algorithm to obtain the target classification cluster.

[0061] In this embodiment, the source node in the original road test data is determined, and the nearest node to the source node is searched. The node closest to the source node is taken as the first generation node. Starting from the first generation node as the current parent node, the search for the descendant node set is performed iteratively, with the current parent node as the starting point and the adaptive node spacing as the neighborhood search radius. If a new node exists within the neighborhood search radius, the new node is taken as the current parent node, and the search for the descendant node set continues with the adaptive node spacing as the neighborhood search radius until no new node exists within the neighborhood search radius. The search ends and all nodes and node distances from the source node to the last generation node are stored. A cluster is formed based on all nodes from the source node to the last generation node. The node distance is the set of distances between nodes at the same level and descendant nodes. The adaptive node spacing is: Dist = arg min(European_dist(last-generi, next-generj)), where last-generi is the parent in two adjacent generations, and next-generj is the child in two adjacent generations. European_dist represents the Euclidean distance.

[0062] Based on the attributes of each data object in the cluster, branches containing shared nodes are combined into a single cluster structure, and branches with complete intersection are pruned to obtain a simplified cluster. The specific steps are as follows: Extract any cluster and prune branches with complete intersection. That is, assume there are two distinct branches Ti and Tj and |Ti|≥|Tj|, satisfying the pruning condition: In this case, prune Tj and retain only Ti. Shared node branch clustering: Assume there are two distinct branches T1 and T2 and |T1|≥|T2|. The condition for achieving shared node clustering is that T2 contains nodes of T1. In this case, merge the two branches into T1.

[0063] By pruning the data objects and complete intersections in the clusters of coarse clustering and merging branches containing shared nodes, the data structure of the clusters can be further simplified, facilitating further data processing.

[0064] 207. Based on a preset outlier detection algorithm, perform data anomaly detection on the target classification cluster to obtain the anomaly degree of the target classification cluster;

[0065] In this embodiment, the data in the simplified clusters are standardized according to Ti-stand=Ti+|min(Ti)|; the distance between nodes in the same cluster is calculated. Here, Ndis(x) is the calculated distance between nodes in the cluster, x is the specified data object, xi is other data objects in the cluster, K represents the number of data objects in the cluster, and exp(1) represents a constant with base e and exponent 1. The coefficient of variation of the data in the clusters is calculated according to the following formula: where T represents the sum of distances of all nodes in any cluster, i represents the index number of T, xq represents the distance between nodes in the cluster, k represents the number of nodes in the cluster, j is the number of clusters, Nstd(T) is the standard deviation of the cluster, Nmean(T) is the mean of the cluster, and Ncv(T) is the coefficient of variation.

[0066] 208. Identify the abnormal data in the original road test data based on the anomaly degree, and remove the abnormal data to obtain the target road test data;

[0067] In this embodiment, the local relative proximity of data objects in the calculation class is used as the basis for calculating the MDILAF as the anomaly degree of the data object. The anomaly degree is used to determine and remove abnormal data values ​​in the target dataset. Here, Nx is the cluster of data object x, and |N(x)| is the sum of distances of all other data objects in the class.

[0068] 209. Create a driving animation rendering task based on the received driving animation rendering request, and create a variable to represent the current frame based on the target road test data and the driving animation rendering task;

[0069] 210. Create a layer to be rendered and a driving animation view window based on the target road test data, and load the layer to be rendered into the driving animation view window;

[0070] 211. Determine the relative position information of the target vehicle based on the absolute position information of the preset layer;

[0071] 212. Based on the relative position information of the target vehicle, the variables of the current frame, and the order of the layers to be rendered, the layers to be rendered are rendered in real time in the driving animation view window to generate driving animation.

[0072] Steps 209-212 in this embodiment are similar to steps 101-104 in the first embodiment, and will not be repeated here.

[0073] In this embodiment of the invention, a driving animation rendering task is created, and a variable representing the current frame is created based on the target road test data and the driving animation rendering task. A layer to be rendered and a driving animation view window are created based on the target road test data, and the relative position information of the target vehicle is determined according to the absolute position information of the preset layers. Based on the relative position information of the target vehicle, the variable of the current frame, and the order of the layers to be rendered, the layers to be rendered are rendered in real time in the driving animation view window to generate a driving animation. This invention processes road test data to generate rich interactive information, dynamically updates the driving animation of the layers, and improves the playback effect of driving animations.

[0074] Please see Figure 3 The third embodiment of the driving animation rendering method in this invention includes:

[0075] 301. Determine the task name, target vehicle data, and target vehicle travel time based on the driving animation rendering request;

[0076] In this embodiment, a vehicle driving animation rendering request is first obtained, and a driving animation rendering task is created based on the request. Next, the data provided by the database is sorted, deduplicated, and then recombined to form a new data structure. Using the latitude and longitude contained in the data, points are marked on the map using external methods provided by the map service. Finally, straight lines are connected between any two points to form a driving trajectory. The driving trajectory supports animation playback. The key to the driving trajectory animation playback function is the position of the points between the two lines, i.e., latitude and longitude. An algorithm calculates the latitude and longitude of each point at the same distance along the trajectory, and then dynamically connects each point, connecting them at regular intervals to create a continuously connected animation effect. The animation ends when all points are connected.

[0077] 302. Create a driving animation rendering task based on the task name, target vehicle data, and target vehicle's driving time;

[0078] In this embodiment, the steps for creating a driving animation rendering task include: switching to the driving trajectory query interface; filling in the task name; filling in the license plate number, driving start time, and driving end time; clicking "Create Task"; searching the database to find all data of vehicle trajectories within the relevant license plate number's time period; task creation completed; double-clicking the completed task; removing duplicate data to obtain valid data sorted by time; drawing the trajectory on the map and popping up the task results pop-up page.

[0079] In this embodiment, a driving animation rendering task was quickly created, which prepared the way for the subsequent processing and display of the driving trajectory.

[0080] 303. Load the layers to be rendered into the preset layer manager, where the layers to be rendered include map layers, road layers, vehicle layers, and obstacle layers;

[0081] In this embodiment, the layer manager is responsible for managing layers and supports functions such as adding, deleting, retrieving all layer ranges, setting draft layers, and retrieving draft layers. Specifically, to facilitate the management of layers to be rendered, all layers to be rendered can be added to the layer manager.

[0082] 304. Determine the rendering engine corresponding to each layer to be rendered, and associate the rendering engine with the layer rendering manager;

[0083] In this embodiment, the layer rendering manager is used to manage the rendering engines. It can register and uninstall layer renderers, and also customize the rendering order of each layer renderer. The rendering engines can use the layer rendering manager to make each rendering engine perform rendering actions on each layer, which is determined by the layer's visibility, minimum visible scale, maximum visible scale, whether the rendering cache mechanism is enabled, and whether parallel rendering is used.

[0084] After adding all layers to be rendered to the layer manager, it can also receive user selection instructions, select the corresponding rendering engine for each layer to be rendered, and register each rendering engine to the layer rendering manager.

[0085] 305. Determine the layer status corresponding to each layer to be rendered, and load the layers to be rendered into the driving animation view window according to the layer status;

[0086] In this embodiment, the layer to be rendered refers to a layer that provides the function of wrapping the data source to be rendered, such as a vector data layer, a tile data layer, or a custom data layer. After determining the data source to be rendered, a layer to be rendered can be created for each data source, and a driving animation view window can be created to prepare for rendering the layer to be rendered in the driving animation view window.

[0087] After creating the driving animation view window, all layers to be rendered can be loaded into the driving animation view window to register the status of each layer to be rendered and the type of rendering engine, determine the layer status corresponding to each layer to be rendered, and load the layers to be rendered into the driving animation view window according to the layer status.

[0088] 306. Determine the relative position information of the target vehicle based on the absolute position information of the preset layer;

[0089] 307. Based on the driving animation rendering request, iterate through the layer states corresponding to each layer to be rendered;

[0090] In this embodiment, spatial query is a special type of query supported by geographic and spatial databases. Spatial query statements differ from non-spatial SQL queries in many important aspects, the two most important being: the allowance for the use of geometric data types such as points, lines, and polygons, and the query involving spatial relationships between geometric types. Based on two-dimensional or three-dimensional spatial data, the query results are represented graphically.

[0091] 308. Based on the variables of the current frame and the order of the layers to be rendered, determine whether the layer state is within the driving animation view window and whether the rendering cache mechanism is enabled. If so, determine the data to be drawn for each layer to be rendered.

[0092] In this embodiment, upon receiving a global rendering command, the layer states corresponding to each layer to be rendered can be traversed sequentially. If the layer state is displayed as being within the driving animation view window without a rendering cache mechanism enabled, the required drawing data within each layer to be rendered can be queried through the space. The rendering engine corresponding to the layer to be rendered is invoked to perform parallel rendering of each drawing data, obtaining at least one rendered frame image. The rendered frame image is then loaded into the layer buffer of the driving animation view window. Finally, the view listener in the driving animation view window retrieves all rendered frame images from the layer buffer and loads them in layer order to generate the driving animation.

[0093] 309. Create a layer buffer corresponding to the layer to be rendered, call the rendering engine corresponding to the layer to be rendered to render the data to be drawn in parallel, obtain the rendering frame image, and save the rendering frame image to the layer buffer.

[0094] In this embodiment, upon receiving a global rendering command, the layer states corresponding to each layer to be rendered can be traversed sequentially. If the layer state is displayed as being within the driving animation view window without a rendering cache mechanism enabled, the required drawing data within each layer to be rendered can be queried through the space. The rendering engine corresponding to the layer to be rendered is then invoked to perform parallel rendering of each drawing data, obtaining at least one rendering frame image, and loading the rendering frame image into the layer buffer of the driving animation view window.

[0095] 310. When the layer status of all layers to be rendered is displayed as rendering complete, load the rendered frame image in the layer buffer into the layer buffer of the driving animation view window.

[0096] In this embodiment, all rendered frame images in the layer buffer are obtained through the view listener in the driving animation view window and loaded in layer order to generate driving animation.

[0097] 311. Based on the relative position information of the target vehicle, preprocess the rendered frame image loaded into the layer buffer of the driving animation view window to generate a driving animation.

[0098] In this embodiment, the rendering engine corresponding to the layer to be rendered is invoked to perform parallel rendering of each piece of data to be drawn, resulting in at least one rendered frame image. The rendered frame image is then loaded into the layer buffer of the driving animation view window. All rendered frame images in the layer buffer are obtained through the view listener in the driving animation view window and loaded in layer order to generate the driving animation.

[0099] Step 306 in this embodiment is similar to step 103 in the first embodiment, and will not be described again here.

[0100] In this embodiment of the invention, a driving animation rendering task is created, and a variable representing the current frame is created based on the target road test data and the driving animation rendering task. A layer to be rendered and a driving animation view window are created based on the target road test data, and the relative position information of the target vehicle is determined according to the absolute position information of the preset layers. Based on the relative position information of the target vehicle, the variable of the current frame, and the order of the layers to be rendered, the layers to be rendered are rendered in real time in the driving animation view window to generate a driving animation. This invention processes road test data to generate rich interactive information, dynamically updates the driving animation of the layers, and improves the playback effect of driving animations.

[0101] The driving animation rendering method in the embodiments of the present invention has been described above. The driving animation rendering apparatus in the embodiments of the present invention will be described below. Please refer to [link / reference]. Figure 4 The first embodiment of the driving animation rendering device in this invention includes:

[0102] The creation module 401 is used to create a driving animation rendering task according to the received driving animation rendering request, and to create a variable to represent the current frame based on the target road test data and the driving animation rendering task.

[0103] The loading module 402 is used to create a layer to be rendered and a driving animation view window based on the target road test data, and load the layer to be rendered into the driving animation view window;

[0104] The first determining module 403 is used to determine the relative position information of the target vehicle based on the absolute position information of the preset layer;

[0105] The rendering module 404 is used to render the layers to be rendered in real time in the driving animation view window based on the relative position information of the target vehicle, the variables of the current frame and the order of the layers to be rendered, so as to generate a driving animation.

[0106] In this embodiment of the invention, a driving animation rendering task is created, and a variable representing the current frame is created based on the target road test data and the driving animation rendering task. A layer to be rendered and a driving animation view window are created based on the target road test data, and the relative position information of the target vehicle is determined according to the absolute position information of the preset layers. Based on the relative position information of the target vehicle, the variable of the current frame, and the order of the layers to be rendered, the layers to be rendered are rendered in real time in the driving animation view window to generate a driving animation. This invention processes road test data to generate rich interactive information, dynamically updates the driving animation of the layers, and improves the playback effect of driving animations.

[0107] Please see Figure 5 A second embodiment of the driving animation rendering device in this invention specifically includes:

[0108] The creation module 401 is used to create a driving animation rendering task according to the received driving animation rendering request, and to create a variable to represent the current frame based on the target road test data and the driving animation rendering task.

[0109] The loading module 402 is used to create a layer to be rendered and a driving animation view window based on the target road test data, and load the layer to be rendered into the driving animation view window;

[0110] The first determining module 403 is used to determine the relative position information of the target vehicle based on the absolute position information of the preset layer;

[0111] The rendering module 404 is used to render the layers to be rendered in real time in the driving animation view window based on the relative position information of the target vehicle, the variables of the current frame and the order of the layers to be rendered, so as to generate a driving animation.

[0112] In this embodiment, the driving animation rendering device further includes:

[0113] The fusion module 405 is used to acquire vehicle autonomous driving data collected by vehicle sensing devices and to perform fusion processing on the vehicle autonomous driving data to obtain target driving data.

[0114] The second determining module 406 is used to divide driving scenarios based on the target driving data and determine the mapping relationship between the driving scenarios and the target driving data;

[0115] Extraction module 407 is used to extract data segments corresponding to the driving scenario from the target driving data based on the mapping relationship, so as to obtain raw road test data.

[0116] In this embodiment, the fusion module 405 is specifically used for:

[0117] Standard sensing devices are determined based on preset data acquisition rules;

[0118] Based on the standard sensing device, the data frames of the vehicle autonomous driving data are traversed, and the timestamp of the standard sensing device is matched with the data frames of the vehicle autonomous driving data to obtain the data frame with the timestamp closest to the corresponding time of the standard sensing device as the target sensor data.

[0119] The target sensing data is fused to obtain target driving data.

[0120] In this embodiment, the driving animation rendering device further includes:

[0121] Clustering module 408 is used to perform coarse clustering on the original road test data based on a preset clustering algorithm to obtain multiple clusters;

[0122] The pruning module 409 is used to prune and merge the multiple clusters using a threshold pruning algorithm to obtain the target classification cluster group.

[0123] The detection module 410 is used to perform data anomaly detection on the target classification cluster based on a preset outlier detection algorithm, and obtain the anomaly degree of the target classification cluster.

[0124] The elimination module 411 is used to determine abnormal data in the original road test data according to the abnormality degree, and eliminate the abnormal data to obtain the target road test data.

[0125] In this embodiment, the creation module 401 is specifically used for:

[0126] The task name, target vehicle data, and driving time of the target vehicle are determined based on the driving animation rendering request.

[0127] A driving animation rendering task is created based on the task name, the target vehicle data, and the target vehicle's driving time.

[0128] In this embodiment, the loading module 402 includes:

[0129] The loading unit 4021 is used to load the layer to be rendered into a preset layer manager, wherein the layer to be rendered includes a map layer, a road layer, a vehicle layer, and an obstacle layer;

[0130] Association unit 4022 is used to determine the rendering engine corresponding to each of the layers to be rendered, and associate the rendering engine with the layer rendering manager;

[0131] The determining unit 4023 is used to determine the layer state corresponding to the layer to be rendered, and load the layer to be rendered into the driving animation view window according to the layer state.

[0132] In this embodiment, the rendering module 404 is specifically used for:

[0133] Based on the driving animation rendering request, iterate through the layer states corresponding to each layer to be rendered;

[0134] Based on the variables of the current frame and the order of the layers to be rendered, determine whether the layer state is within the driving animation view window and whether the rendering cache mechanism is enabled;

[0135] If so, then determine the data to be drawn corresponding to each of the layers to be rendered;

[0136] Create a layer buffer corresponding to the layer to be rendered;

[0137] The rendering engine corresponding to the layer to be rendered is invoked to perform parallel rendering of the data to be drawn, and the rendered frame image is obtained and saved to the layer buffer.

[0138] When the layer status of all the layers to be rendered is displayed as rendering complete, the rendered frame image in the layer buffer is loaded into the layer buffer of the driving animation view window;

[0139] Based on the relative position information of the target vehicle, the rendered frame image loaded into the layer buffer of the driving animation view window is preprocessed to generate a driving animation.

[0140] In this embodiment of the invention, a driving animation rendering task is created, and a variable representing the current frame is created based on the target road test data and the driving animation rendering task. A layer to be rendered and a driving animation view window are created based on the target road test data, and the relative position information of the target vehicle is determined according to the absolute position information of the preset layers. Based on the relative position information of the target vehicle, the variable of the current frame, and the order of the layers to be rendered, the layers to be rendered are rendered in real time in the driving animation view window to generate a driving animation. This invention processes road test data to generate rich interactive information, dynamically updates the driving animation of the layers, and improves the playback effect of driving animations.

[0141] above Figure 4 and Figure 5 The driving animation rendering device in this embodiment of the invention will be described in detail from the perspective of modular functional entities. The driving animation rendering device in this embodiment of the invention will be described in detail from the perspective of hardware processing.

[0142] Figure 6This is a schematic diagram of the structure of a driving animation rendering device 600 provided in an embodiment of the present invention. The driving animation rendering device 600 can vary significantly due to different configurations or performance. It may include one or more central processing units (CPUs) 610 (e.g., one or more processors) and a memory 620, and one or more storage media 630 (e.g., one or more mass storage devices) storing application programs 633 or data 632. The memory 620 and storage media 630 can be temporary or persistent storage. The program stored in the storage media 630 may include one or more modules (not shown in the diagram), each module may include a series of instruction operations on the driving animation rendering device 600. Furthermore, the processor 610 may be configured to communicate with the storage media 630 and execute a series of instruction operations in the storage media 630 on the driving animation rendering device 600 to implement the steps of the driving animation rendering method provided in the above-described method embodiments.

[0143] The driving animation rendering device 600 may also include one or more power supplies 640, one or more wired or wireless network interfaces 650, one or more input / output interfaces 660, and / or one or more operating systems 631, such as Windows Server, Mac OS X, Unix, Linux, FreeBSD, etc. Those skilled in the art will understand that... Figure 6 The illustrated structure of the vehicle animation rendering device does not constitute a limitation on the vehicle animation rendering device provided in this application. It may include more or fewer components than illustrated, or combine certain components, or have different component arrangements.

[0144] The present invention also provides a computer-readable storage medium, which can be a non-volatile computer-readable storage medium or a volatile computer-readable storage medium, wherein the computer-readable storage medium stores instructions that, when the instructions are executed on a computer, cause the computer to perform the steps of the above-described driving animation rendering method.

[0145] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.

[0146] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0147] The above-described embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions 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 invention.

Claims

1. A method for rendering driving animation, characterized in that, The driving animation rendering method includes: A driving animation rendering task is created based on the received driving animation rendering request, and a variable is created to represent the current frame based on the target road test data and the driving animation rendering task. Based on the target road test data, a rendering layer and a driving animation view window are created, and the rendering layer is loaded into the driving animation view window; The relative position information of the target vehicle is determined based on the absolute position information of the preset layer; Based on the relative position information of the target vehicle, the variables of the current frame, and the order of the layers to be rendered, the layers to be rendered are rendered in real time in the driving animation view window to generate a driving animation. This also includes: The original road test data is coarsely clustered based on a preset clustering algorithm to obtain multiple clusters. The multiple clusters are pruned and merged using a threshold pruning algorithm to obtain the target classification cluster group. The target classification cluster is subjected to data anomaly detection based on a preset outlier detection algorithm to obtain the anomaly degree of the target classification cluster. Based on the anomaly level, abnormal data in the original road test data is determined and removed to obtain the target road test data.

2. The driving animation rendering method according to claim 1, characterized in that, Before creating a driving animation rendering task based on the received driving animation rendering request, and creating a variable to represent the current frame based on the target road test data and the driving animation rendering task, the method further includes: The vehicle's autonomous driving data is collected by vehicle sensing devices and fused to obtain target driving data. Based on the target driving data, driving scenarios are segmented, and the mapping relationship between the driving scenarios and the target driving data is determined; Based on the mapping relationship, data segments corresponding to the driving scenario are extracted from the target driving data to obtain the original road test data.

3. The driving animation rendering method according to claim 2, characterized in that, The process of fusing the vehicle's autonomous driving data to obtain target driving data includes: Standard sensing devices are determined based on preset data acquisition rules; Based on the standard sensing device, the data frames of the vehicle autonomous driving data are traversed, and the timestamp of the standard sensing device is matched with the data frames of the vehicle autonomous driving data to obtain the data frame with the timestamp closest to the corresponding time of the standard sensing device as the target sensor data. The target sensor data is fused to obtain target driving data.

4. The driving animation rendering method according to claim 1, characterized in that, The step of creating a driving animation rendering task based on the received driving animation rendering request includes: The task name, target vehicle data, and driving time of the target vehicle are determined based on the driving animation rendering request. A driving animation rendering task is created based on the task name, the target vehicle data, and the target vehicle's travel time.

5. The driving animation rendering method according to claim 1, characterized in that, Loading the layer to be rendered into the driving animation view window includes: The layer to be rendered is loaded into a preset layer manager, wherein the layer to be rendered includes a map layer, a road layer, a vehicle layer, and an obstacle layer; Determine the rendering engine corresponding to each of the layers to be rendered, and associate the rendering engine with the layer rendering manager; Determine the layer state corresponding to each of the layers to be rendered, and load the layers to be rendered into the driving animation view window according to the layer state.

6. The driving animation rendering method according to any one of claims 1-5, characterized in that, The method of generating a driving animation by rendering the layers to be rendered in real time in the driving animation view window based on the relative position information of the target vehicle, the variables of the current frame, and the order of the layers to be rendered includes: Based on the driving animation rendering request, iterate through the layer states corresponding to each layer to be rendered; Based on the variables of the current frame and the order of the layers to be rendered, determine whether the layer state is within the driving animation view window and whether the rendering cache mechanism is enabled; If so, then determine the data to be drawn corresponding to each of the layers to be rendered; Create a layer buffer corresponding to the layer to be rendered; The rendering engine corresponding to the layer to be rendered is invoked to perform parallel rendering of the data to be drawn, and the rendered frame image is obtained and saved to the layer buffer. When the layer status of all the layers to be rendered is displayed as rendering complete, the rendered frame image in the layer buffer is loaded into the layer buffer of the driving animation view window; Based on the relative position information of the target vehicle, the rendered frame image loaded into the layer buffer of the driving animation view window is preprocessed to generate a driving animation.

7. A vehicle animation rendering device, characterized in that, The driving animation rendering device includes: A creation module is used to create a driving animation rendering task based on the received driving animation rendering request, and to create a variable to represent the current frame based on the target road test data and the driving animation rendering task. The loading module is used to create a layer to be rendered and a driving animation view window based on the target road test data, and to load the layer to be rendered into the driving animation view window; The first determining module is used to determine the relative position information of the target vehicle based on the absolute position information of the preset layer; The rendering module is used to render the layers to be rendered in real time in the driving animation view window based on the relative position information of the target vehicle, the variables of the current frame, and the order of the layers to be rendered, so as to generate a driving animation. The driving animation rendering device also includes: The clustering module is used to perform coarse clustering of the original road test data based on a preset clustering algorithm to obtain multiple clusters; The pruning module is used to prune and merge the multiple clusters using a threshold pruning algorithm to obtain the target classification cluster group. The detection module is used to perform data anomaly detection on the target classification cluster based on a preset outlier detection algorithm, and to obtain the anomaly degree of the target classification cluster. The elimination module is used to determine abnormal data in the original road test data based on the abnormality level, and to eliminate the abnormal data to obtain the target road test data.

8. A vehicle animation rendering device, characterized in that, The driving animation rendering device includes: a memory and at least one processor, wherein the memory stores instructions, and the memory and the at least one processor are interconnected via a line; The at least one processor invokes the instructions in the memory to cause the driving animation rendering device to perform the various steps of the driving animation rendering method as described in any one of claims 1-6.

9. A computer-readable storage medium storing a computer program thereon, characterized in that, When the computer program is executed by the processor, it implements each step of the driving animation rendering method as described in any one of claims 1-6.