Method and apparatus for processing trajectory data, smart device, and storage medium

HK40075339BActive Publication Date: 2026-09-18TENCENT TECHNOLOGY (SHENZHEN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
HK42022064509
Authority / Receiving Office
HK · HK
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-11-24
Publication Date
2026-09-18
Estimated Expiration
2041-04-15

AI Technical Summary

Technical Problem

In current technologies, path planning for game AI characters requires manual design, which is inefficient and time-consuming.

Method used

By acquiring a set of trajectory images, converting them into trajectory heatmaps, determining the similarity matrix, performing clustering processing, automatically analyzing the hotspot movement paths, and determining the target movement path.

Benefits of technology

It requires no human intervention, saves labor costs, improves route planning efficiency, and can automatically analyze and determine the most representative hotspot movement routes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

This application proposes a method and related apparatus for processing trajectory data, which can be applied to the field of artificial intelligence. The method includes: acquiring a trajectory image set, the trajectory image set including multiple trajectory images; converting the trajectory images in the trajectory image set into trajectory heatmaps, and determining a similarity matrix based on the trajectory heatmap corresponding to each trajectory image, where the matrix elements in the similarity matrix represent the similarity between the scene movement trajectories corresponding to two trajectory images; performing clustering processing on the trajectory images recorded in the trajectory image set based on the similarity matrix to obtain clustering results; determining the target movement trajectory of the target cluster set among the N clustering sets corresponding to the clustering results, and determining the target movement path based on the target movement trajectory. This solution can efficiently determine movement paths in a scene.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of Internet technology, and in particular to a method, apparatus, smart device, and storage medium for processing trajectory data. Background Technology

[0002] With the continuous development of artificial intelligence technology, it is being researched and applied in various fields, such as the field of intelligent games. A common application in the field of intelligent games is to set up game AI (Artificial Intelligence) characters, which assist players or compete against them in the game.

[0003] In game scenarios or other computer-simulated virtual scenarios, path planning is often required. For example, in a game scenario, a game path needs to be designed to guide the AI ​​character's movement along this designed path. Currently, the planning of various required scene movement paths or trajectories is generally achieved through manual design or annotation by game developers or testers, which is time-consuming and inefficient. Summary of the Invention

[0004] This application provides a method, apparatus, smart device, and storage medium for processing trajectory data, which can efficiently determine the movement path in a scene.

[0005] One embodiment of this application provides a method for processing trajectory data, including:

[0006] Obtain a set of trajectory images, which includes multiple trajectory images. Each trajectory image is generated based on the trajectory data of the scene movement trajectory in the target scene.

[0007] The trajectory images in the trajectory image set are converted into trajectory heatmaps, and a similarity matrix is ​​determined based on the trajectory heatmap corresponding to each trajectory image. The matrix elements in the similarity matrix are used to represent the similarity between the scene movement trajectories corresponding to the two trajectory images.

[0008] Based on the similarity matrix, the trajectory images recorded in the trajectory image set are clustered to obtain the clustering results. The clustering results include N cluster sets, where multiple trajectory images that are determined to be of the same category by the clustering process belong to one cluster set, and N is an integer greater than or equal to 1.

[0009] Determine the target movement trajectory of the target cluster among N cluster sets, and determine the target movement path based on the target movement trajectory.

[0010] One embodiment of this application provides a trajectory data processing apparatus, including:

[0011] The acquisition unit is used to acquire a set of trajectory images, which includes multiple trajectory images. Each trajectory image is generated based on trajectory data of scene movement trajectory in the target scene.

[0012] The processing unit is used to convert the trajectory images in the trajectory image set into trajectory heatmaps, and determine the similarity matrix based on the trajectory heatmap corresponding to each trajectory image. The matrix elements in the similarity matrix are used to represent the similarity between the scene movement trajectories corresponding to the two trajectory images.

[0013] The processing unit is also used to perform clustering processing on the trajectory images recorded in the trajectory image set according to the similarity matrix, and obtain the clustering processing result. The clustering processing result includes: N cluster sets, where multiple trajectory images that are determined to be of the same category by the clustering processing belong to one cluster set, and N is an integer greater than or equal to 1.

[0014] The processing unit is also used to determine the target movement trajectory of the target cluster set among N cluster sets, and to determine the target movement path based on the target movement trajectory.

[0015] One embodiment of this application provides an intelligent device, including a memory and a processor. The memory stores a computer program, and when the computer program is executed by the processor, the processor performs the methods described in the above embodiments.

[0016] One aspect of this application provides a computer storage medium storing a computer program, which includes program instructions. When the program instructions are executed by a processor, they perform the methods described in the above embodiments.

[0017] One aspect of this application provides a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. When the computer instructions are executed by the processor of a terminal device, the methods described in the above embodiments are performed.

[0018] Through the embodiments of this application, trajectory images can be generated from relevant trajectory data collected in the target scene during the activity of actual users in the target scene, and the trajectory images can be converted into trajectory heatmaps. Then, based on the trajectory heatmaps, the similarity between two scene movement trajectories is determined, and a similarity matrix is ​​constructed based on the similarity between any two scene movement trajectories. Based on the similarity matrix, the trajectory image set including multiple trajectory images is clustered to obtain a clustering result including N clusters, and finally, the target movement path corresponding to each cluster is determined. By mining the similarity between scene movement trajectories, similar scene movement trajectories are grouped into the same cluster set, and then hotspot movement paths are determined from these relatively similar scene movement trajectories. This method can automatically analyze hotspot movement paths without manual intervention, thus saving labor costs and identifying the most representative hotspot movement paths. Attached Figure Description

[0019] To more clearly illustrate the technical solutions of the embodiments of this application, the drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0020] Figure 1 This is a schematic diagram of the architecture of a trajectory data processing system provided in an embodiment of this application;

[0021] Figure 2a This is a scene diagram illustrating a scene movement trajectory provided in an embodiment of this application;

[0022] Figure 2b This is a schematic diagram of a game scene for controlling virtual characters provided in an embodiment of this application;

[0023] Figure 3a This is a flowchart illustrating a trajectory data processing method provided in an embodiment of this application;

[0024] Figure 3b This is a schematic diagram illustrating the process of processing trajectory data provided in this application;

[0025] Figure 4 This application provides a schematic diagram of a trajectory image and a schematic diagram of a trajectory thermal image.

[0026] Figure 5a This is a schematic flowchart illustrating the process of determining a normalized trajectory heatmap provided in an embodiment of this application;

[0027] Figure 5b This is a schematic diagram of a low-pass filter provided in an embodiment of this application;

[0028] Figure 5c This is a schematic diagram of a trajectory image provided in an embodiment of this application;

[0029] Figure 6 This is a schematic diagram of a process for determining a similarity matrix provided in an embodiment of this application;

[0030] Figure 7 This is a flowchart illustrating another method for processing trajectory data provided in an embodiment of this application;

[0031] Figure 8a This is a schematic diagram of a performance test report provided in an embodiment of this application;

[0032] Figure 8b This is a schematic diagram of another performance test report provided in an embodiment of this application;

[0033] Figure 8c This is a schematic diagram of another performance test report provided in an embodiment of this application;

[0034] Figure 8d This is a schematic diagram of another performance test report provided in an embodiment of this application;

[0035] Figure 9 This is a schematic diagram of the structure of a trajectory data processing device provided in an embodiment of this application;

[0036] Figure 10 This is a schematic diagram of the structure of a smart device provided in an embodiment of this application. Detailed Implementation

[0037] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.

[0038] This application provides a method for automating the processing of trajectory data generated in scenarios such as games. Specifically, it converts trajectory images from a trajectory image set containing multiple trajectory images into trajectory heatmaps. Each trajectory image is generated based on trajectory data of scene movement trajectories in a target scene. Then, a similarity matrix is ​​determined based on the trajectory heatmap corresponding to each trajectory image. The matrix elements in the similarity matrix represent the similarity between the scene movement trajectories corresponding to two trajectory images. Further, based on the similarity matrix, the trajectory images recorded in the trajectory image set are clustered to obtain a clustering result comprising N clusters, where N is an integer greater than or equal to 1. Finally, the target movement trajectory of the target cluster within the N clusters is determined, and the target movement path is determined based on the target movement trajectory.

[0039] Once the target movement path is obtained as mentioned above, the AI ​​robot can move along that path in the target scene and perform corresponding actions during the movement. For example, if the target scene is a game battle scene within a game map, the AI ​​robot can move along the target movement path on the game map in that battle scene and perform actions such as jumping and releasing game skills during the movement.

[0040] Artificial intelligence (AI) is the theory, methods, technology, and application systems that use digital computers or machines controlled by digital computers to simulate, extend, and expand human intelligence, perceive the environment, acquire knowledge, and use that knowledge to achieve optimal results. In other words, AI is a comprehensive technology within computer science that attempts to understand the essence of intelligence and produce a new kind of intelligent machine that can react in a way similar to human intelligence. AI studies the design principles and implementation methods of various intelligent machines, enabling them to possess the functions of perception, reasoning, and decision-making.

[0041] The solution provided in this application belongs to the deep learning technology under the field of artificial intelligence. In this application, deep learning technology can be used to cluster the trajectory images recorded in the trajectory image set according to the similarity matrix to obtain the clustering result.

[0042] Deep Learning (DL) is an interdisciplinary field involving probability theory, statistics, approximation theory, convex analysis, and algorithm complexity theory. It specifically studies how computers can simulate or implement human learning behavior to acquire new knowledge or skills and reorganize existing knowledge structures to continuously improve their performance. Machine learning is the core of artificial intelligence and the fundamental way to endow computers with intelligence; its applications span all areas of artificial intelligence. Machine learning and deep learning typically include techniques such as artificial neural networks, belief networks, reinforcement learning, transfer learning, inductive learning, and instructional learning.

[0043] This application can be applied to the following scenarios as needed: In automated performance testing of game application scenarios (such as competitive games), virtual characters play an important role. The optimization goal of virtual characters can improve the reliability of automated performance testing by reproducing the game behavior of users in the scenario. The specific reproduction process can include controlling AI movement based on the position coordinates on the game map along the aforementioned target movement path. In other embodiments, since the target movement paths determined by this application can be considered as some very representative paths, the analysis of these target movement paths can further optimize the corresponding scenario map, making various scenarios more in line with the habits of users such as scenario users. In other embodiments, after determining the target movement paths, subsequent game performance test reports can be generated based on the reproduction of game player behavior by virtual characters, and game version iterations and updates can be performed based on the game performance test reports. For example, simulating users moving in the scenario according to various target movement paths, performing corresponding actions, and collecting the computer resources consumed at different locations and when performing the same or different actions, such as CPU (Central Processing Unit) resources, memory resources, etc.

[0044] The trajectory data processing procedure of this application embodiment can be applied to a system, specifically executed by a service device within that system. Please refer to [reference needed]. Figure 1 , Figure 1 This is a schematic diagram of the architecture of a trajectory data processing system provided in an embodiment of this application. The system architecture includes a server 140 and a cluster of intelligent devices, wherein the cluster of intelligent devices may include intelligent devices 110, 120, 130, etc. The cluster of intelligent devices and the server 140 can be directly or indirectly connected via wired or wireless communication, which is not limited herein.

[0045] Figure 1 The server 140 shown can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms.

[0046] Figure 1The smart devices 110, 120, and 130 shown can be mobile phones, tablets, laptops, PDAs, mobile internet devices (MIDs), vehicles, roadside devices, aircraft, wearable devices such as smartwatches, smart bracelets, pedometers, etc., and other smart devices with trajectory data processing functions.

[0047] In one possible implementation, taking smart device 110 as an example, smart device 110 acquires a set of trajectory images, wherein the set of trajectory images includes multiple trajectory images, each of which is generated based on the trajectory data of a scene movement trajectory; smart device 110 sends the set of trajectory images to server 140. After acquiring the set of trajectory images, server 140 converts the trajectory images in the set of trajectory images into trajectory heatmaps, and determines a similarity matrix based on the trajectory heatmap corresponding to each trajectory image, wherein the matrix elements in the similarity matrix are used to represent the similarity between two scene movement trajectories; then, server 140 performs clustering processing on the trajectory images recorded in the set of trajectory images based on the similarity matrix, and obtains clustering processing results, wherein the clustering processing results include: N cluster sets, where multiple trajectory images determined to belong to the same category by the clustering processing belong to one cluster set, and N is an integer greater than or equal to 1; finally, server 140 determines the target movement trajectory of the target cluster set among the N cluster sets, and determines the movement path based on the game trajectory data corresponding to the target movement trajectory.

[0048] Subsequently, in the target scenario of the competitive game, which could be a game scene within a map of a competitive game application, the smart device 110 can send a path acquisition request for the game map within the target scenario to the server 140. After receiving the path acquisition request from the smart device 110, the server 140 can send the determined target movement path back to the smart device 110. Thus, the smart device 110 can guide the virtual character to move within the game map based on the target movement path. This solution can better reproduce the user's game behavior in the scenario while reducing labor costs.

[0049] Of course, the process of converting trajectory images in the trajectory image set into trajectory heatmaps, and further determining the similarity matrix and the target movement path, does not necessarily have to be performed by server 140. It can also be performed by smart device 110 or any other smart device in the smart device cluster. Guiding the virtual character to move in the game map according to the target movement path also does not necessarily have to be performed by smart device 110. It can also be performed by server 140.

[0050] It is understood that the system architecture diagrams described in the embodiments of this application are for the purpose of more clearly illustrating the technical solutions of the embodiments of this application, and do not constitute a limitation on the technical solutions provided in the embodiments of this application. As those skilled in the art will know, with the evolution of system architecture and the emergence of new business scenarios, the technical solutions provided in the embodiments of this application are also applicable to similar technical problems.

[0051] The application scenarios of the trajectory data processing method proposed in the embodiments of this application will be described in detail below with reference to the accompanying drawings.

[0052] Please see Figure 2a , Figure 2a This is a scene illustration of a movement trajectory provided in an embodiment of this application. In this application, trajectory data of all online game players (external network game players) can be collected through the game interface. Figure 2a As shown, in the map of the target scene, the movement trajectory from starting point A to starting point C can be collected. For each external game player, the collected trajectory data can include at least: the player's position and action information on the map for each frame. The action information can be, for example, game actions. Specifically, the position information can include x-coordinates and y-coordinates. In some other embodiments, the position information can be x-coordinates, y-coordinates, and z-coordinates, which may apply to 3D games. Game actions can include the player's orientation in the x-direction, orientation in the y-direction, whether jumping, engaging in combat, or whether the game has ended, etc. For the same game, a large amount of trajectory data from game players can be obtained. Of course, the collected trajectory data can include at least one of the following: trajectory data collected from the same game player at different times, or trajectory data collected from different game players at different times, or trajectory data collected from different game players at different times, etc. This application does not limit this.

[0053] In the process of collecting trajectory data, the collection frequency can be set manually based on experience. For example, in this application, the collection frequency of trajectory data can correspond to the display frame rate of the user in the target scene. For example, if the display frame rate of a user's target scene is 30 frames per second, then the collection frequency of trajectory points on the trajectory data is 30 times per second. This can be understood as the location information and action information of the user's role in the target scene being extracted once for each frame of the target scene image. Of course, the collection frequency of trajectory data can also be updated within a fixed time period. For example, for a user on the map corresponding to the target scene, the collection frequency during the first collection can be 30 times per second, and the collection frequency during the second collection can be 15 times per second. Then, the trajectory data collected in the two collections are statistically analyzed to obtain the final collected trajectory data. In addition, during the collection of trajectory data, the position sequence of a player from the beginning (e.g., starting to move) to the end (e.g., game over) can be regarded as a game trajectory. For any player, when the player starts the game, it can be determined that the player has started moving when the player's action of starting to move is detected; then, it can be determined that the player has ended the game when the player is hit by the action.

[0054] In one possible implementation, the specific process for collecting the game trajectory of any user (game player) in the scene is as follows: First, for the reference user, starting from the detection of the reference user's first action, the trajectory data of each trajectory point traversed by the reference user is counted within the reference time frame until the detection of the reference user's second action, at which point the counting stops. Here, the first action can be the action corresponding to the start of the user's movement, and the second action can be the action corresponding to the end of the game. Then, all the counted trajectory points and the trajectory data corresponding to each trajectory point are determined as the reference game trajectory corresponding to the reference user. The reference game trajectory is any one of multiple game trajectories in the user's trajectory set. In this way, the process of collecting trajectory data and determining the corresponding game trajectory for each user can refer to the aforementioned process of determining the reference game trajectory for the reference user, ultimately determining a trajectory set including the game trajectories of a large number of users.

[0055] Next, based on the collected trajectory data of a large number of game players, corresponding trajectory images can be generated, with each trajectory image corresponding to a game trajectory. Then, the trajectory images in the trajectory image set can be converted into trajectory heatmaps. In one embodiment, a trajectory heatmap refers to an image containing multiple heat points and the heat value of each heat point. Each heat point in the trajectory heatmap is calculated based on the value of each pixel in the trajectory image; the specific calculation process will be described later. In a game scenario, the trajectory heatmap is used to display, in a specially highlighted form, the locations visited by the user in the virtual geography and their neighboring locations, or the locations traversed by the user character during movement in the virtual geography and their neighboring locations. For example, in... Figure 2a The player's movement trajectory, starting from point A, passing through point B1, and reaching point C, is transformed and displayed as a highlighted area on the trajectory heatmap. On the heatmap, locations frequently visited by the user have a higher heat value than virtual areas that are rarely visited or not visited at all. In other words, the heat value of locations the user's character passes through and their vicinity during movement is higher than the heat value of locations not visited. After converting the trajectory images into heatmaps, a similarity matrix is ​​determined based on the heatmap corresponding to each trajectory image. The matrix elements in the similarity matrix represent the similarity between two game trajectories. It should be noted that the heatmap can be obtained by converting all trajectory images in the trajectory image set, or it can be obtained by selecting a portion of the trajectory images and performing image conversion. This embodiment does not specifically limit the approach.

[0056] In one possible implementation, the trajectory images recorded in the trajectory image set can be clustered based on a similarity matrix, resulting in N clusters, where N is an integer greater than or equal to 1. Multiple trajectory images identified as belonging to the same category are grouped into one cluster. Finally, the target movement trajectory is determined within each of the N clusters, resulting in N target movement trajectories. Each target movement trajectory corresponds to a target movement path (which can be determined based on the trajectory data), thus ultimately determining N target movement paths. Figure 2aAs shown, all scene movement trajectories passing near trajectory point B1 can be grouped into a cluster set of the same category, which may include at least path 101, path 102, path 103, path 104, and path 105. Similarly, all scene movement trajectories passing near trajectory point B2 can be grouped into another cluster set, which may include at least path 201 and path 202. Likewise, all scene movement trajectories passing near trajectory point B3 can be grouped into yet another cluster set, which may include at least path 301, path 302, and path 303. Then, based on the scheme of this application, a target scene movement trajectory is determined in each cluster set, and the movement path corresponding to the determined target scene movement trajectory is taken as the target movement path. For example, the determined target movement path may include path 101, path 201, and path 301.

[0057] In one possible implementation, within the intelligent simulation scenario of an adversarial game, a virtual character (e.g., an intelligent robot) can be controlled to reproduce the game based on N predetermined target movement paths. Game reproduction specifically refers to controlling the virtual character to perform corresponding movements and game operations according to the target movement paths. See also... Figure 2b , Figure 2b This is a schematic diagram of a game scene for controlling virtual characters, provided in an embodiment of this application. Figure 2b As shown, the dotted line represents the hotspot movement path (i.e., the target movement path). The virtual character moves along this path, which includes multiple trajectory points. The virtual character moves based on the position of each trajectory point. Additionally, the virtual character can perform corresponding game actions at each trajectory point. These actions include, but are not limited to, jumping, combat actions, and rotation.

[0058] This application can be used in game scenarios. The target movement path determined by the trajectory data processing method provided in this application can be used for testing intelligent simulation games, controlling virtual characters to reproduce the game according to the target movement path. Compared with manually annotating movement paths, this application can automatically analyze and determine the corresponding movement path based on the acquired game data, saving manual annotation costs and improving processing efficiency.

[0059] The following is combined with Figure 3a and Figure 3b The trajectory data processing described in this application is explained. Please refer to [link / reference]. Figure 3a , Figure 3a This is a flowchart illustrating a trajectory data processing method provided in an embodiment of this application. Figure 3bThis is a schematic diagram illustrating a trajectory data processing procedure provided in this application. The trajectory data processing method can be applied to smart devices, such as smartphones, tablets, smart wearable devices, etc. The process can also be performed collaboratively by the smart device and a server; the smart device can also function as the server. Figure 3a As shown, the data processing method may include steps S310 to S340. Wherein:

[0060] S310: Obtain a set of trajectory images, which includes multiple trajectory images. Each trajectory image is generated based on trajectory data of a scene movement trajectory in the target scene.

[0061] In this embodiment, the scene movement trajectory may include the game trajectory. In one possible implementation, each trajectory image in the trajectory image set is determined by game data from the online game scene collected through the game interface. Specifically, the game data can be trajectory data of the game trajectory, including but not limited to: the player's position and action information on the map for each frame. The action information may include, for example, game actions such as jumping, releasing game skills, etc. The position information may specifically include the x, y, and z coordinates on the scene map in the target scene; the game actions may include the player's orientation in the x, y, and z directions, as well as whether they jumped, whether they engaged in combat, whether the game ended, etc.

[0062] Of course, in the process of collecting game trajectory data online, it is possible to collect the trajectory data of some or all of the game trajectories generated by users in the target scene within a certain time period. The trajectory data of all game players in the game within a fixed time period may further include at least one of the following: trajectory data collected by the same game player at different times on the scene map of the target scene, or trajectory data collected by different game players at different times, or trajectory data collected by different game players at different times, etc. This application does not limit this.

[0063] During the trajectory data collection process, the collection frequency can be manually set based on experience. For example, administrators can set the collection frequency through the management interface, such as 30 frames per second. A higher collection frequency results in more trajectory points within a single scene movement trajectory, leading to a more detailed movement path. Conversely, a lower collection frequency results in fewer trajectory points within a single scene movement trajectory, resulting in a coarser movement path.

[0064] Finally, based on the trajectory data of multiple game trajectories collected, corresponding trajectory images are generated. Each game trajectory corresponds to one trajectory image, and multiple trajectory images are placed in a trajectory image set.

[0065] In one possible implementation, the smart device acquires trajectory data about a reference game trajectory reported by the user terminal and determines the trajectory length of the reference game trajectory based on this data. If the trajectory length of the reference game trajectory meets a length filtering condition, a trajectory image is generated based on the trajectory data of the reference game trajectory and placed into a trajectory image set; if the trajectory length of the reference game trajectory does not meet the length filtering condition, the trajectory data of the reference game trajectory is deleted. The length filtering condition can be: greater than or equal to a reference length threshold.

[0066] For example, since some players' game trajectories are very short (i.e., the player is defeated by the opponent from the very beginning), a length filter can be set. This filter could be, for example, a reference length threshold for the game trajectory. If the length of the game trajectory is less than this threshold, the trajectory is removed and not included in the collected trajectory data. In this way, the collected trajectory data becomes representative and reliable. Ultimately, for specific game maps (such as...),... Figure 2a The map shown represents a competitive game, which collects a set of user trajectories from various scenarios.

[0067] S320: Convert the trajectory images in the trajectory image set into trajectory heatmaps, and determine the similarity matrix based on the trajectory heatmap corresponding to each trajectory image.

[0068] In this application, each trajectory image in the trajectory image set can be converted into a corresponding trajectory heatmap, or only a portion of the trajectory images in the trajectory image set can be converted into corresponding trajectory heatmaps; this application does not impose any specific limitations on this. Furthermore, the matrix elements in the similarity matrix are used to represent the similarity between two scene movement trajectories, which can be game trajectories.

[0069] In one possible implementation, to facilitate the quick and easy calculation of the trajectory heatmap corresponding to the trajectory image, the trajectory images in the obtained trajectory image set are binary images. A binary image is an image where each pixel has only two possible values; in this application, the binary images include images with pixel values ​​of 0 and 1. Furthermore, pixels with a value of 0 correspond to trajectory points not visited by the user, while pixels with a value of 1 correspond to trajectory points visited by the user. Setting the trajectory images as binary images significantly reduces the storage space occupied by the trajectory image set. When calculating the trajectory heatmap, only the 0 or 1 values ​​corresponding to the pixels need to be calculated, effectively reducing computational complexity. The intelligent device can use a low-pass filter to perform low-pass filtering on the target trajectory image in the trajectory image set to obtain the target trajectory heatmap corresponding to the target trajectory image. The low-pass filter related to this application includes, but is not limited to, matrices, convolution kernels, etc.

[0070] like Figure 4 As shown, Figure 4 This application provides a schematic diagram of a trajectory image and a schematic diagram of a trajectory heatmap. In the schematic diagram of the trajectory image, the trajectory image includes multiple trajectory points. For a binary trajectory image, a pixel with a value of 1 represents a trajectory point where the game character has visited that pixel, while a pixel with a value of 0 represents a trajectory point where the game character has not visited that pixel. In the schematic diagram of the trajectory heatmap, the closer to the trajectory point, the higher the heat value, and vice versa.

[0071] In one possible implementation, after determining the target trajectory heatmap, firstly, the maximum heat value among the K heat values ​​corresponding to K heat points in the target trajectory heatmap is determined. A heat point refers to a point in the trajectory heatmap, and each heat point corresponds to a heat value. The trajectory heatmap and the trajectory image have the same image size, and there is a one-to-one correspondence between the K heat points and K pixels. The heat point at each location in the heatmap is calculated from the corresponding pixel in the trajectory image, where K is an integer greater than or equal to 1. Then, based on the heat values ​​of each heat point and the maximum heat value in the target trajectory heatmap, a normalized trajectory heatmap is determined. The normalized trajectory heatmap includes K normalized heat points, and the normalized heat value corresponding to each normalized heat point is determined by the ratio between the heat value corresponding to each heat point and the maximum heat value.

[0072] In this application, a normalized trajectory heatmap is obtained by normalizing the target trajectory heatmap. When calculating the similarity between any two scene movement trajectories based on the normalized trajectory heatmap, the calculated similarity can be a value within [0,1], which can reduce the amount of computation and make the calculation faster.

[0073] In one possible implementation, the target normalized heat value of each target pixel in the target pixel set is determined in the normalized trajectory heatmap. The target pixels in the target pixel set are pixels in the reference trajectory image whose pixel values ​​are preset values. The determined target normalized heat values ​​are summed to obtain a total heat value. Based on the reference trajectory image, the target trajectory image, and the total heat value, the similarity between the first scene movement trajectory corresponding to the reference trajectory image and the second scene movement trajectory corresponding to the target trajectory image is determined.

[0074] In one possible implementation, the specific process for determining two game trajectories (scene movement trajectories) can be as follows: First, determine the number of first trajectories in the reference trajectory image whose pixel values ​​are preset values, and determine the number of second trajectories in the target trajectory image whose pixel values ​​are preset values. Then, determine the maximum number of trajectories between the first and second trajectories. Finally, based on the sum of heat values ​​and the maximum number of trajectories, determine the similarity between the first scene movement trajectory corresponding to the reference trajectory image and the second scene movement trajectory corresponding to the target trajectory image.

[0075] After determining the similarity between two game trajectories using the method described above, the similarity between any two game trajectories corresponding to any two trajectory images in the trajectory image set can be calculated by referring to the method described above for determining the similarity between the first scene movement trajectory and the second scene movement trajectory, which will not be repeated here. In one embodiment, assuming there are S game trajectories in the trajectory image set, there are S*(S-1) combinations of similarity, and then a similarity matrix is ​​constructed using these S*(S-1) combinations of similarity. The similarity matrix is ​​obtained in this way, where the values ​​on the diagonal of the similarity matrix are 1, meaning that each game trajectory has a similarity of 1 to itself.

[0076] For example, suppose there are S game trajectories X1, X2, ..., Xs, where the similarity between X1 and X2 is denoted as Y12, the similarity between X1 and X3 as Y13, the similarity between X2 and X1 as Y21, and so on. The similarity matrix formed by the S game trajectories can be expressed as follows:

[0077]

[0078] S330: Based on the similarity matrix, cluster the trajectory images recorded in the trajectory image set to obtain the clustering results, which include N cluster sets. Multiple trajectories identified as belonging to the same category by the clustering process belong to the same cluster set, where N is an integer greater than or equal to 1.

[0079] In this application, multiple trajectory images identified as belonging to the same category through clustering processing belong to a cluster set, where N is an integer greater than or equal to 1. Each of the N cluster sets after clustering processing can correspond to a category; for example, if N equals 10, there are 10 categories. Of course, each cluster set may not be classified into a specific category; clustering processing simply groups multiple similar trajectory images in the trajectory image set into the same cluster set, which is considered the same category. This can be simply described as one cluster set being the first category and another cluster set being the second category. In other words, as long as clustering processing can divide multiple trajectory images in the trajectory image set into N cluster sets, this application does not specifically limit whether each cluster set corresponds to a category or whether it is labeled with a corresponding category.

[0080] For example, in such Figure 2a In the scene movement trajectory diagram shown, all scene movement trajectories passing near trajectory point B1 can be divided into a first category of clusters, which at least include paths 101, 102, 103, 104, and 105. Similarly, all scene movement trajectories passing near trajectory point B2 can be divided into a second category of clusters, which at least include paths 201 and 202. Likewise, all scene movement trajectories passing near trajectory point B3 can be divided into a third category of clusters, which at least include paths 301, 302, and 303. Of course, more detailed clusters can be created depending on the scene; this application does not impose specific limitations on this.

[0081] In one possible implementation, the intelligent device uses a clustering algorithm based on a similarity matrix to cluster the trajectory images recorded in the trajectory image set, resulting in a clustering result comprising N cluster sets.

[0082] For example, clustering algorithms can include spectral clustering, a graph-based clustering method that divides a weighted undirected graph into two or more optimal subgraphs, maximizing the similarity within each subgraph while minimizing the distance between them, thus achieving the common clustering objective. "Optimal" here refers to the optimal objective function, which can be either a minimum-cut partition or a partition with roughly the same size but the smallest cut edges. Spectral clustering clusters the sample data (i.e., a set of trajectory images) by clustering the eigenvectors of the Laplacian matrix (which can be generated from similarity matrices). Spectral clustering can be understood as mapping high-dimensional data to a low-dimensional space, and then using other clustering algorithms, such as K-Means (k-means clustering), to cluster the data in the low-dimensional space.

[0083] In this application, a spectral clustering algorithm is used to cluster the trajectory image set. Compared with other unsupervised clustering algorithms, it mainly has the following advantages:

[0084] 1. The process does not make many assumptions about the data structure.

[0085] 2. By constructing a sparse similarity graph, it is possible to achieve significantly faster computation speeds than other algorithms for larger datasets.

[0086] 3. Since spectral clustering algorithms process graphs, they do not aggregate discrete small clusters together as in k-means clustering (a clustering algorithm).

[0087] 4. Unlike Gaussian Mixed Models (GMMs), it does not require making assumptions about the probability distribution of the data.

[0088] In addition to spectral clustering algorithms, the clustering algorithms involved in the application embodiments may also include distance-based clustering algorithms or density-based clustering algorithms. Distance-based clustering algorithms may include k-meams clustering algorithms or hierarchical clustering algorithms, while density-based clustering algorithms may include density-based spatial clustering of applications with noise (DBSCAN). Furthermore, the k-meams clustering algorithm can cluster objects based on k points in space, classifying the closest objects and iteratively updating the values ​​of each cluster center until the best clustering result is obtained. Hierarchical clustering algorithms can treat each object as a cluster and then merge these atomic clusters into increasingly larger clusters until all objects are in one cluster or a certain termination condition is met. The DBSCAN algorithm defines a cluster as the largest set of density-connected points, capable of dividing regions with sufficiently high density into clusters and discovering clusters of arbitrary shapes in noisy spatial databases.

[0089] In one possible implementation, the trajectory images recorded in the trajectory image set are clustered based on a similarity matrix. Each of the resulting N clusters contains a large number of scene movement trajectories (i.e., a large number of trajectory images). Specifically, after clustering the trajectory images in the trajectory image set based on the similarity matrix, N+10 clusters are obtained. The number of scene movement trajectories in each cluster is then counted, and it is determined whether the number of game trajectories meets the filtering criteria. For example, the number of scene movement trajectories in each cluster is compared with a reference threshold. If the number of scene movement trajectories in a cluster is less than the reference threshold, the filtering criteria are met, and the trajectory images in that cluster are filtered. Finally, 10 clusters with a number of scene movement trajectories less than the reference threshold are selected. The trajectory images in these 10 selected clusters are then filtered, resulting in N clusters containing a large number of scene movement trajectories.

[0090] Of course, besides filtering scene movement trajectories in the clustered sets based on a reference quantity threshold, in one possible implementation, this application can also sort the N+10 clustered sets obtained after clustering processing according to the number of trajectory images contained in them from high to low (or low to high), and then filter the trajectory images included in the 10 clustered sets at a specified position after sorting from high to low (or low to high) to obtain N clustered sets. Alternatively, the N+10 clustered sets obtained after clustering processing can be sorted according to the number of trajectory images contained in them from high to low (or low to high), and then the trajectory images included in the last 10 (or first 10) clustered sets after sorting from high to low (or low to high) can be filtered to obtain N clustered sets. It should be noted that the appropriate filtering method and the number of clustered sets to be filtered can be selected according to the specific business scenario. This application embodiment does not limit the filtering method or the number of clustered sets to be filtered.

[0091] In this way, trajectory images in clusters containing fewer scene movement trajectories are filtered out, resulting in trajectory sets containing more scene movement trajectories, which makes the scene movement trajectories included in the cluster sets more referential and representative.

[0092] S340: Determine the target movement trajectory of the target cluster set among N cluster sets, and determine the target movement path based on the target movement trajectory.

[0093] In this application, the target cluster set can be any of the N cluster sets. In one possible implementation, for the target cluster set among the N cluster sets, an average heatmap of the M trajectory heatmaps corresponding to the M trajectory images included in the target cluster set is calculated, where M is an integer greater than or equal to 1. Then, based on the M trajectory heatmaps and the average heatmap, the target movement trajectory of the target cluster set among the N cluster sets is determined.

[0094] For example, since each trajectory heatmap can be a matrix and they are all the same size, calculating the average heatmap of M trajectory heatmaps means adding the M matrices together and then dividing by M. The resulting average matrix is ​​the average heatmap.

[0095] In one possible implementation, the specific process by which the intelligent device determines the target movement trajectory of the target cluster set among N cluster sets based on M trajectory heatmaps and the average heatmap is as follows: First, determine the M value difference information between each trajectory heatmap and the average heatmap in the M trajectory heatmaps; then, determine the trajectory heatmap corresponding to the value difference information that satisfies the condition of minimizing the difference among the M value difference information as the target trajectory heatmap; finally, determine the scene movement trajectory corresponding to the target trajectory heatmap as the target movement trajectory of the target cluster set among the N cluster sets.

[0096] The value difference information can include absolute differences. Therefore, when the value difference information is an absolute difference, the condition for minimizing the difference can be the minimum value among the absolute differences.

[0097] For example, for each cluster, the average heatmap of multiple trajectory images within the cluster is calculated to obtain the average heatmap. Then, the absolute difference between the trajectory heatmap and the average heatmap is calculated, and the trajectory heatmap with the smallest difference is identified as the target trajectory heatmap. The calculation formula is as follows:

[0098]

[0099] Where id represents the index number of the final selected trajectory heatmap. represents the i-th heatmap in the cluster set, and N represents the total number of trajectory heatmaps in the cluster set. This represents the average heatmap. It should be noted that each trajectory image in the trajectory set carries an identifier, which can include an index number in the cluster set.

[0100] Through the embodiments of this application, trajectory images can be generated from relevant trajectory data collected in the target scene during the activity of actual users in the target scene, and the trajectory images can be converted into trajectory heatmaps. Then, based on the trajectory heatmaps, the similarity between two scene movement trajectories is determined, and a similarity matrix is ​​constructed based on the similarity between any two scene movement trajectories. Based on the similarity matrix, the trajectory image set including multiple trajectory images is clustered to obtain a clustering result including N clusters, and finally, the target movement path corresponding to each cluster is determined. By mining the similarity between scene movement trajectories, similar scene movement trajectories are grouped into the same cluster set, and then hotspot movement paths are determined from these relatively similar scene movement trajectories. This method can automatically analyze hotspot movement paths without manual intervention, thus saving labor costs and identifying the most representative hotspot movement paths.

[0101] Please see Figure 5a , Figure 5aThis is a schematic flowchart illustrating the process of determining a normalized trajectory heatmap according to an embodiment of this application. Figure 5a The example is Figure 3a A specific embodiment of step S320 in the implementation example. This method is applied to smart devices, such as... Figure 5a As shown, the method may include steps S510 to S530. Wherein:

[0102] S510: A low-pass filter is used to perform low-pass filtering on the target trajectory image in the trajectory image set to obtain the target trajectory heatmap corresponding to the target trajectory image. The low-pass filtering process includes: moving a preset low-pass filter matrix to the target trajectory image, aligning the center point (or anchor point) of the low-pass filter matrix with the target pixel on the trajectory image whose corresponding heatmap value is to be calculated; calculating the pixel value of the pixel in the area covered by the low-pass filter matrix and the matrix element value of the low-pass filter matrix to obtain the heatmap value of the target heatmap corresponding to the target pixel. Calculating the pixel value of the pixel in the area covered by the low-pass filter matrix and the matrix element value of the low-pass filter matrix may include: multiplying the pixel value of the pixel in the area covered by the low-pass filter matrix by the matrix element value of the low-pass filter matrix to obtain a multiplication result; then summing all the multiplication results; the sum is the heatmap value of the target heatmap corresponding to the target pixel.

[0103] In one possible implementation, the target trajectory image includes K pixels, each corresponding to a pixel value; the target trajectory heatmap includes K heat points, each corresponding to a heat value. Furthermore, there is a one-to-one correspondence between the K heat points and the K pixels, where K is an integer greater than or equal to 1. The low-pass filter matrix, or simply the low-pass filter, can be a P×P matrix, comprising P×P matrix points, each corresponding to a matrix element value. The center point of the P×P matrix is ​​the anchor point, and P is an integer greater than or equal to 1.

[0104] The following section details the specific process of converting a trajectory image into a trajectory heatmap:

[0105] In one possible implementation, firstly, the matrix element value corresponding to the anchor point and the target pixel value corresponding to the target pixel among the K pixels are calculated to obtain the intermediate point calculation value. Then, based on the intermediate point calculation value and the set of neighboring point calculation values, the target point heat value corresponding to the target pixel is determined. The set of neighboring point calculation values ​​includes the neighboring point calculation values ​​of all other matrix points in the P×P matrix except the anchor point; each neighboring point calculation value is obtained based on the matrix element values ​​corresponding to other matrix points and the pixel values ​​of the matching points among the K pixels corresponding to other matrix points.

[0106] In a P×P matrix, typically the element value corresponding to the anchor point is the largest. The element values ​​of other adjacent points decrease sequentially according to their distance from the anchor point, with the decrease rate potentially being the same or different. For a P×P matrix, these other points can be further subdivided into points within the first and second neighborhoods of the anchor point. The first neighborhood can include a four-neighborhood, the second neighborhood can include a nine-neighborhood, and so on. For example, the low-pass filter corresponding to a P×P matrix could be... Figure 5b As shown, Figure 5b This is a schematic diagram of a low-pass filter provided in an embodiment of this application.

[0107] like Figure 5b As shown, the low-pass filter in this application can specifically be a 5×5 matrix, with the matrix element value being the largest at the middle point (i.e., the anchor point). The anchor point can be located in the third row and third column. The closer to the edge of the matrix, the smaller the matrix element value of the corresponding matrix point. For example, the matrix element value of the eight matrix points in the eight-neighborhood centered on the anchor point can all be 2. Among the twenty-four matrix points in the twenty-four-neighborhood centered on the anchor point, excluding the aforementioned matrix point with a matrix element value of 2, the matrix element value of the remaining matrix points can all be 1.

[0108] Then, the anchor point of the filter is placed on a specific pixel (which can be any pixel in the binary image). Simultaneously, the other values ​​of the filter coincide with the neighboring pixels of that pixel. Each value within the kernel is multiplied by the corresponding pixel value, and the resulting products are summed. Finally, the result is placed on the pixel corresponding to the anchor point. For example, the target trajectory image in a binary image could be... Figure 5c As shown, Figure 5c This is a schematic diagram of a trajectory image provided in an embodiment of this application.

[0109] In such Figure 5cIn the binary image shown, pixels with a value of 1 represent points on the trajectory where the game character has visited, while pixels with a value of 0 represent points on the trajectory where the game character has not visited. It should be noted that the dimensions of the binary image and the trajectory heatmap are the same, but the dimensions of the binary image (or the trajectory heatmap) and the dimensions of the low-pass filter can be the same or different. Assuming the target pixel is in the 2nd row and 2nd column, first calculate the pixel value 1 corresponding to that point and the matrix element value 5 corresponding to the anchor point of the low-pass filter. This can be done by multiplying the two values ​​by 1 × 5 = 5, thus obtaining the calculated value 5 for the intermediate point. Then, multiply the pixel value 1 corresponding to other points around that point (e.g., points above that point) by the matrix element value 2 of the low-pass filter matching other points (2nd row and 3rd column), thus obtaining the calculated value 2 for the neighboring point. Similarly, multiply the pixel value 1 corresponding to another pixel around the target pixel (1st row and 3rd column) by the matrix element value 2 of the low-pass filter matching other points (2nd row and 4th column), thus obtaining the calculated value 2 for the neighboring point.

[0110] Similarly, the neighboring values ​​of all points in the 5×5 matrix except the anchor point are calculated and summed to obtain a set of neighboring point values. Finally, for each pixel in the binary image, the heat value of the corresponding heat point is calculated using the above method. Thus, the trajectory image can be converted into a trajectory heatmap using a low-pass filter. Furthermore, in the schematic diagram of the trajectory heatmap, the heat value is larger closer to the trajectory point, and vice versa.

[0111] S520: Determine the maximum thermal value among the K thermal values ​​corresponding to K thermal points in the target trajectory heatmap.

[0112] S530: Determine the normalized trajectory heatmap based on the heat values ​​and maximum heat values ​​of each heat point in the target trajectory heatmap.

[0113] In one possible implementation, firstly, the maximum heat value among the K heat values ​​corresponding to K heat points in the target trajectory heatmap is determined; then, a normalized trajectory heatmap is determined based on the heat values ​​of each heat point and the maximum heat value in the target trajectory heatmap. The normalized trajectory heatmap includes K normalized heat points, and the normalized heat value corresponding to each normalized heat point is determined by the ratio between the heat value corresponding to each heat point and the maximum heat value.

[0114] In this application, after obtaining the trajectory heatmap, further post-processing can be performed on the trajectory heatmap (the result of convolving the trajectory image and the low-pass filter). Post-processing may include normalizing the trajectory heatmap so that the maximum value in the trajectory heatmap is 1. This can be achieved by dividing the heatmap value of each heat point in the trajectory heatmap by the maximum heatmap value, as shown in the following formula:

[0115]

[0116] In the above formula, the numerator represents the thermal value of each thermal point in the trajectory heatmap, and the denominator is the maximum thermal value in the trajectory heatmap. This yields a normalized trajectory heatmap after normalization. Of course, the normalized trajectory heatmap has the same dimensions as the original trajectory heatmap.

[0117] Next, after determining the normalized trajectory heatmap, please refer to... Figure 6 , Figure 6 This is a schematic flowchart illustrating the process of determining a similarity matrix according to an embodiment of this application. Figure 6 The example is Figure 3a A specific embodiment of step S320 in the implementation example. This method is applied to smart devices, such as... Figure 6 As shown, the method may include steps S610 to S630. Wherein:

[0118] S610: Determine the target normalized heat value of each target pixel in the target pixel set corresponding to the normalized heat point in the normalized trajectory heatmap.

[0119] The target pixel set includes pixels in the reference trajectory image whose pixel values ​​are preset values. The reference trajectory image can be any trajectory image in the trajectory image set other than the target trajectory image, and can also be a binary image. The preset value can be 1.

[0120] For example, suppose there are five points with a pixel value of 1 in the reference trajectory image: p1, p2, p3, p4, and p5. Furthermore, the normalized heatmap points corresponding to p1, p2, p3, p4, and p5 are r1, r2, r3, r4, and r5, respectively. Then, suppose the determined normalized heatmap value for p1 at r1 is m1, for p2 at r2 is m2, for p3 at r3 is m3, for p4 at r14 is m4, and for p5 at r5 is m5.

[0121] S620: Summing the determined target normalized thermodynamic values ​​to obtain the total thermodynamic value.

[0122] For example, based on the target normalized thermodynamic value determined above, all the determined target normalized thermodynamic values ​​are added together to obtain the total thermodynamic value of m1+m2+m3+m4+m5.

[0123] S630: Based on the reference trajectory image, the target trajectory image, and the sum of thermal values, determine the similarity between the first scene movement trajectory corresponding to the reference trajectory image and the second scene movement trajectory corresponding to the target trajectory image.

[0124] In one possible implementation, firstly, the number of first trajectories in the reference trajectory image with pixel values ​​of preset values ​​is determined, and the number of second trajectories in the target trajectory image with pixel values ​​of preset values ​​is determined. Then, a maximum number of trajectories is determined between the first and second number of trajectories. Finally, based on the sum of thermal values ​​and the maximum number of trajectories, the similarity between the first scene movement trajectory corresponding to the reference trajectory image and the second scene movement trajectory corresponding to the target trajectory image is determined.

[0125] In one possible implementation, the ratio between the sum of thermal values ​​and the maximum number of trajectories can be used as the similarity between the first scene movement trajectory corresponding to the reference trajectory image and the second scene movement trajectory corresponding to the target trajectory image.

[0126] For example, based on the above method, the similarity between two scene movement trajectories is calculated using the reference trajectory image, the target trajectory image, and the sum of heat values. The calculation formula is as follows:

[0127]

[0128] Where p1 can be the movement trajectory in the first scene, and p2 can be the movement trajectory in the second scene. This is a heatmap corresponding to the movement trajectory in the second scene. The numerator on the right side of the formula corresponds to the pixel with a value of 1 in p1. The cumulative value in the numerator is larger the closer p1 and p2 are, which means that the similarity between the two scene movement trajectories is higher. The denominator corresponds to the maximum number of trajectories of p1 and p2, which is used for normalization.

[0129] This application can be used in game scenarios. The following section details the process of applying this application to game scenarios. Please see [link / reference]. Figure 7 , Figure 7 This is a flowchart illustrating another trajectory data processing method provided in an embodiment of this application. The process may include steps S710 to S760. Wherein:

[0130] S710: Collects user data for various scenarios.

[0131] For details of step S710, please refer to [link / reference]. Figure 3a The implementation method of obtaining the trajectory image set in step S310 of the embodiment will not be described again here.

[0132] S720: Trajectory Clustering.

[0133] For details of step S720, please refer to [link / reference]. Figure 3a The implementation method of determining the similarity between two scene movement trajectories in step S320 of the embodiment will not be described again in this application.

[0134] S730: Trajectory Clustering.

[0135] For details of step S730, please refer to [link / reference]. Figure 3a The implementation method of "clustering the trajectory images recorded in the trajectory image set according to the similarity matrix" in step S330 of the embodiment will not be described again in this application.

[0136] S740: Select hotspot path.

[0137] For details of step S740, please refer to [link / reference]. Figure 3a The implementation method of "determining the target movement trajectory of the target cluster set in N cluster sets and determining the target movement path based on the target movement trajectory" in step S340 of the embodiment will not be described again in this application.

[0138] S750: Returning player behavior.

[0139] In one possible implementation, the target movement trajectory includes multiple trajectory points, each corresponding to a trajectory data point, which includes position information and motion information. The smart device generates displacement commands based on the position information of each trajectory point in the target movement trajectory and controls the virtual character to move according to the displacement commands; and / or, generates motion commands based on the motion information of each trajectory point in the target movement trajectory and controls the virtual character to perform game actions at the corresponding trajectory points according to the motion commands.

[0140] For example, in an intelligent simulation scenario of a competitive game, a virtual character (e.g., an intelligent robot) can be controlled to reproduce the game based on N predetermined target movement paths. Game reproduction specifically refers to controlling the virtual character to perform corresponding movements and game operations according to the target movement paths. Please see [link to relevant documentation]. Figure 2b , Figure 2b This is a schematic diagram of a game scene for controlling virtual characters, provided in an embodiment of this application. Figure 2bAs shown, the dotted line represents the hotspot movement path (i.e., the target movement path). The virtual character moves along this path, which includes multiple trajectory points. The virtual character moves based on the position of each trajectory point. Additionally, the virtual character can perform corresponding game actions at each trajectory point. These actions include, but are not limited to, jumping, engaging in combat, and rotating.

[0141] In this application, assuming N=10, 10 hotspot movement paths (i.e., target movement paths) can be obtained. The virtual character can be controlled to move sequentially according to the trajectory data corresponding to these 10 target movement paths. During movement, the current position and orientation of the game character on the map are obtained through the game interface. The orientation of the game character is set according to the recorded orientation data, and the distance between the character's position and the target position on the path is calculated. If the distance is less than a reference distance threshold, it indicates that the game character has reached the vicinity of the target position, and the target position needs to be updated (selecting the next position in the player's position sequence as the target position). Otherwise, the movement direction is calculated based on the game character's position and the target position, and the character moves towards the target position. Simultaneously, the player's jump and combat actions need to be reproduced. If the player performs a jump or combat action in a certain frame, it needs to be determined whether the player is near the position recorded in that frame. If so, the jump or combat action is executed; otherwise, the character moves towards the recorded position. It should be noted that during the process of controlling the virtual character to reproduce the game, even if there are no enemy characters around the virtual character, if a combat action is required based on a definite action command contained in the trajectory data, the virtual character still needs to execute the combat action.

[0142] The target movement path determined by the trajectory data processing method provided in this application can be used for testing intelligent simulation games, controlling virtual characters to reproduce the game according to the target movement path. Compared to manually annotating movement paths, this application can automatically analyze and determine the corresponding movement path based on the acquired game data, saving manual annotation costs and improving processing efficiency.

[0143] S760: Output performance test report.

[0144] In one possible implementation, during the process of controlling the virtual character to move its position according to displacement instructions and / or controlling the virtual character to perform game actions at corresponding trajectory points according to action instructions, for each trajectory point, game performance data corresponding to each trajectory point is determined. The game performance data may include one or more of the following: CPU usage data, temperature data, and frame rate data of the game client. Then, based on the determined game performance data corresponding to each trajectory point, a performance test report corresponding to the target movement path is output.

[0145] In one possible implementation, the performance test report output in this application can be a report output after reproducing any hotspot movement path (i.e., the target movement path), or it can be a report output after determining multiple hotspot movement paths corresponding to the set of reproduced trajectories. This application does not make any specific limitation on this.

[0146] For example, this application provides a detailed explanation using the example of an output performance test report that reproduces multiple hotspot movement paths. Please refer to [link to relevant documentation]. Figure 8a , Figure 8a This is a schematic diagram of a performance test report provided in an embodiment of this application. Figure 8a As shown, this performance test report displays performance test data for 10 hotspot movement paths. The performance test data includes, but is not limited to, CPU usage, temperature, and frame rate. For any hotspot movement path, users can click on the specific performance test data in the performance test report and view the performance test data for multiple trajectory points included in that hotspot movement path.

[0147] For example, if a user clicks on the CPU percentage data (101) of hotspot movement path 1, a pop-up window (110) will appear showing the CPU percentage data for each of the multiple trajectory points included in hotspot movement path 1. See also... Figure 8b , Figure 8b This is a schematic diagram of another performance test report provided in an embodiment of this application. For example... Figure 8b As shown, Figure 8b It includes the n trajectory points of hotspot path 1, as well as the CPU percentage data corresponding to each trajectory point.

[0148] For example, if a user clicks on the temperature data (102) of hotspot movement path 1, a pop-up window (120) will appear displaying the temperature data for each of the multiple trajectory points included in hotspot movement path 1. Please refer to [link / reference]. Figure 8c , Figure 8c This is a schematic diagram of another performance test report provided in an embodiment of this application. For example... Figure 8c As shown, Figure 8c It includes the n trajectory points of hotspot path 1, as well as the temperature data corresponding to each trajectory point.

[0149] For example, if a user clicks on the frame rate data (103) of hotspot movement path 1, a pop-up window (130) will appear displaying the frame rate data for each of the multiple trajectory points included in hotspot movement path 1. See also... Figure 8d , Figure 8d This is a schematic diagram of another performance test report provided in an embodiment of this application. For example... Figure 8d As shown, Figure 8dIt includes the n trajectory points of hotspot path 1, and the frame rate data corresponding to each trajectory point.

[0150] In summary, for each hotspot movement path in the performance test report, the above method can be used to view the performance test data (including one or more of CPU usage, temperature, and frame rate data) at each trajectory point along that path. It should be noted that since the performance data is collected at each trajectory point using the testing tool, therefore... Figure 8a In the performance test report shown, the CPU percentage data for each hotspot path can be determined based on the CPU percentage data at multiple trajectory points. In one possible implementation, the CPU percentage data for each hotspot path can be one or more of the following: the average CPU percentage data obtained from the CPU percentage data at multiple trajectory points, or the maximum CPU percentage data among the CPU percentage data at multiple trajectory points, or the minimum CPU percentage data among the CPU percentage data at multiple trajectory points. In different test scenarios, appropriate metrics can be selected as a reference according to test requirements; this application does not impose specific limitations on this.

[0151] By controlling virtual characters to replay player behavior, this solution can record performance data such as CPU usage, temperature, and frame rate using performance testing tools, and output a performance test report. Since the hotspot movement paths identified by this solution are the most representative movement paths derived from a large number of game tracks, it can reproduce the game state of users in most scenarios, making the output performance test report more reliable.

[0152] Furthermore, game version updates can be made based on performance test reports. For example, since the performance test report includes performance test data for all popular movement paths, the optimal movement path (the path whose performance test data best matches the test standard specifications) can be selected from this data. Then, the game version can be iteratively updated based on this selected optimal path. Ultimately, the updated game version can cover the gameplay behavior of a large number of players while maintaining a relatively good game state (better performance test data). This improves the processing efficiency of the game client's backend for the game platform and enhances the user experience for players, thereby bringing more customers to the game platform.

[0153] Please see Figure 9 , Figure 9 This is a schematic diagram of a trajectory data processing device provided in an embodiment of this application. The trajectory data processing device 900 can be applied to... Figures 3a to 8d The corresponding intelligent device in the method embodiment. The trajectory data processing device 900 may be a computer program (including program code) running on a lightweight node, for example, the trajectory data processing device 900 may be an application software; the device 900 may be used to execute the corresponding steps in the method provided in the embodiments of this application. The trajectory data processing device 900 may include:

[0154] The acquisition unit 901 is used to acquire a trajectory image set, which includes multiple trajectory images, each of which is generated based on trajectory data of scene movement trajectory in the target scene;

[0155] The processing unit 902 is used to convert the trajectory images in the trajectory image set into trajectory heatmaps, and determine a similarity matrix based on the trajectory heatmap corresponding to each trajectory image. The matrix elements in the similarity matrix are used to represent the similarity between the scene movement trajectories corresponding to the two trajectory images.

[0156] The processing unit 902 is also used to perform clustering processing on the trajectory images recorded in the trajectory image set according to the similarity matrix, and obtain the clustering processing result. The clustering processing result includes: N cluster sets, where multiple trajectory images determined to be of the same category by the clustering processing belong to one cluster set, and N is an integer greater than or equal to 1.

[0157] The processing unit 902 is also used to determine the target movement trajectory of the target cluster set among the N cluster sets, and to determine the target movement path based on the target movement trajectory.

[0158] In one possible implementation, the trajectory images in the trajectory image set are binary images, and the processing unit 902 converts the trajectory images in the trajectory image set into trajectory heatmaps, including:

[0159] A low-pass filter is used to perform low-pass filtering on the target trajectory image in the trajectory image set to obtain the target trajectory heatmap corresponding to the target trajectory image.

[0160] In one possible implementation, the target trajectory image includes K pixels, each pixel corresponding to a pixel value; the target trajectory heatmap includes K heat points, each heat point corresponding to a heat value; there is a one-to-one correspondence between the K heat points and the K pixels, where K is an integer greater than or equal to 1; the low-pass filter is a P×P matrix, which includes P×P matrix points, each matrix point corresponding to a matrix element value; the center point of the P×P matrix is ​​the anchor point, where P is an integer greater than or equal to 1;

[0161] Processing unit 902 is also configured to perform the following operations:

[0162] The intermediate point is calculated by comparing the matrix element value corresponding to the anchor point with the target pixel value corresponding to the target pixel among the K pixels.

[0163] Based on the set of calculated values ​​of the intermediate point and the neighboring points, determine the target point thermal value of the target thermal point corresponding to the target pixel.

[0164] The neighborhood point calculation value set includes the neighborhood point calculation values ​​of each other matrix point in the P×P matrix except for the anchor point; each neighborhood point calculation value is calculated based on the matrix element values ​​corresponding to other matrix points and the pixel values ​​of the matching points corresponding to other matrix points among K pixels.

[0165] In one possible implementation, the processing unit 902 is further configured to perform the following operations:

[0166] Determine the maximum thermal value among the K thermal values ​​corresponding to K thermal points in the target trajectory heatmap;

[0167] Based on the thermal values ​​and maximum thermal values ​​of each thermal point in the target trajectory heatmap, a normalized trajectory heatmap is determined.

[0168] The normalized trajectory heatmap includes K normalized heat points. The normalized heat value corresponding to each normalized heat point is determined by the ratio between the heat value corresponding to each heat point and the maximum heat value.

[0169] In one possible implementation, the processing unit 902 determines a similarity matrix based on the trajectory heatmap corresponding to each trajectory image, including:

[0170] Determine the target normalized heat value of each target pixel in the target pixel set in the normalized trajectory heat map, where the target pixels in the target pixel set are pixels in the reference trajectory image whose pixel values ​​are preset values.

[0171] The normalized thermodynamic values ​​of the determined target are summed to obtain the total thermodynamic value.

[0172] Based on the reference trajectory image, the target trajectory image, and the sum of thermal values, the similarity between the first scene movement trajectory corresponding to the reference trajectory image and the second scene movement trajectory corresponding to the target trajectory image is determined.

[0173] In one possible implementation, the processing unit 902 determines the similarity between the first scene movement trajectory corresponding to the reference trajectory image and the second scene movement trajectory corresponding to the target trajectory image based on the reference trajectory image, the target trajectory image, and the sum of thermal values, including:

[0174] The number of first trajectories in the reference trajectory image with pixel values ​​of preset values ​​is determined, and the number of second trajectories in the target trajectory image with pixel values ​​of preset values ​​is determined.

[0175] Determine the maximum number of trajectories between the first number of trajectories and the second number of trajectories;

[0176] Based on the sum of thermal values ​​and the maximum number of trajectories, the similarity between the first scene movement trajectory corresponding to the reference trajectory image and the second scene movement trajectory corresponding to the target trajectory image is determined.

[0177] In one possible implementation, processing unit 902 determines the target movement trajectory of the target cluster set among N cluster sets, including:

[0178] Obtain the average heatmap of M trajectory heatmaps corresponding to M trajectory images in the target cluster set from N cluster sets, where M is an integer greater than or equal to 1;

[0179] Based on M trajectory heatmaps and the average heatmap, determine the target movement trajectory of the target cluster among N cluster sets.

[0180] In one possible implementation, processing unit 902 determines the target movement trajectory of the target cluster set among N cluster sets based on M trajectory heatmaps and the average heatmap, including:

[0181] Determine the M value differences between each trajectory heatmap and the average heatmap in the M trajectory heatmaps;

[0182] The trajectory heatmap corresponding to the value difference information that satisfies the condition of minimizing the difference among M value difference information is determined as the target trajectory heatmap;

[0183] The scene movement trajectory corresponding to the target trajectory heatmap is determined as the target movement trajectory of the target cluster set among N cluster sets.

[0184] In one possible implementation, the target movement trajectory includes multiple trajectory points, each trajectory point corresponding to a trajectory data point, and the processing unit 902 is further configured to perform any one or two of the following steps:

[0185] Based on the position information included in the trajectory data corresponding to the trajectory points on the target's movement trajectory, a displacement command is generated, and the virtual character is controlled to move according to the displacement command.

[0186] Based on the action information included in the trajectory data corresponding to the trajectory points on the target's movement trajectory, action commands are generated, and the virtual character is controlled to perform game actions at the corresponding trajectory points according to the action commands.

[0187] In one possible implementation, the processing unit 902 is further configured to perform the following operations:

[0188] Obtain trajectory data about the movement trajectory of the reference scene reported by the user terminal, and determine the trajectory length based on the reported trajectory data;

[0189] If the determined trajectory length meets the length filtering condition, a trajectory image is generated based on the trajectory data of the reference scene movement trajectory, and the trajectory image is placed into the trajectory image set.

[0190] If the determined trajectory length does not meet the length filtering criteria, then delete the trajectory data of the reference scene movement trajectory.

[0191] The specific implementation of each module in the trajectory data processing device described in this application embodiment and the technical effects that can be achieved can be referred to the description of the relevant content in the foregoing embodiments, and will not be repeated here.

[0192] Please see Figure 10 Please see Figure 10 , Figure 10 This is a schematic diagram of the structure of a smart device provided in an embodiment of this application. The above... Figures 3a to 8d The smart device in the corresponding embodiment can be a smart device 1000. For example... Figure 1 As shown, the smart device 1000 may include a user interface 1002, a processor 1004, an encoder 1006, and a memory 1008. A signal receiver 1016 is used to receive or transmit data via a cellular interface 1010, a Wi-Fi interface 1012, ..., or an NFC interface 1014. The encoder 1006 encodes the received data into a computer-processable data format. The memory 1008 stores a computer program, and the processor 1004 is configured to execute the steps of any of the above method embodiments via the computer program. The memory 1008 may include volatile memory (e.g., dynamic random access memory DRAM) and non-volatile memory (e.g., one-time programmable read-only memory OTPROM). In some instances, the memory 1008 may further include memory remotely located relative to the processor 1004, which can be connected to the smart device 1000 via a network. The user interface 1002 may include a keyboard 1018 and a display 1020.

[0193] exist Figure 10 In the smart device 1000 shown, the processor 1004 can be used to call computer programs stored in the memory 1008 to achieve:

[0194] Obtain a set of trajectory images, which includes multiple trajectory images. Each trajectory image is generated based on the trajectory data of the scene movement trajectory in the target scene.

[0195] The trajectory images in the trajectory image set are converted into trajectory heatmaps, and a similarity matrix is ​​determined based on the trajectory heatmap corresponding to each trajectory image. The matrix elements in the similarity matrix are used to represent the similarity between the scene movement trajectories corresponding to the two trajectory images.

[0196] Based on the similarity matrix, the trajectory images recorded in the trajectory image set are clustered to obtain the clustering results. The clustering results include N cluster sets, where multiple trajectory images that are determined to be of the same category by the clustering process belong to one cluster set, and N is an integer greater than or equal to 1.

[0197] Determine the target movement trajectory of the target cluster among N cluster sets, and determine the target movement path based on the target movement trajectory.

[0198] In one possible implementation, the trajectory images in the trajectory image set are binary images, and the processor 1004 converts the trajectory images in the trajectory image set into trajectory heatmaps, including:

[0199] A low-pass filter is used to perform low-pass filtering on the target trajectory image in the trajectory image set to obtain the target trajectory heatmap corresponding to the target trajectory image.

[0200] In one possible implementation, the target trajectory image includes K pixels, each pixel corresponding to a pixel value; the target trajectory heatmap includes K heat points, each heat point corresponding to a heat value; there is a one-to-one correspondence between the K heat points and the K pixels, where K is an integer greater than or equal to 1; the low-pass filter is a P×P matrix, which includes P×P matrix points, each matrix point corresponding to a matrix element value; the center point of the P×P matrix is ​​the anchor point, where P is an integer greater than or equal to 1;

[0201] Processor 1004 is also used to perform the following operations:

[0202] The intermediate point is calculated by comparing the matrix element value corresponding to the anchor point with the target pixel value corresponding to the target pixel among the K pixels.

[0203] Based on the set of calculated values ​​of the intermediate point and the neighboring points, determine the target point thermal value of the target thermal point corresponding to the target pixel.

[0204] The neighborhood point calculation value set includes the neighborhood point calculation values ​​of each other matrix point in the P×P matrix except for the anchor point; each neighborhood point calculation value is calculated based on the matrix element values ​​corresponding to other matrix points and the pixel values ​​of the matching points corresponding to other matrix points among K pixels.

[0205] In one possible implementation, the processor 1004 is also used to perform the following operations:

[0206] Determine the maximum thermal value among the K thermal values ​​corresponding to K thermal points in the target trajectory heatmap;

[0207] Based on the thermal values ​​and maximum thermal values ​​of each thermal point in the target trajectory heatmap, a normalized trajectory heatmap is determined.

[0208] The normalized trajectory heatmap includes K normalized heat points. The normalized heat value corresponding to each normalized heat point is determined by the ratio between the heat value corresponding to each heat point and the maximum heat value.

[0209] In one possible implementation, the processor 1004 determines a similarity matrix based on the trajectory heatmap corresponding to each trajectory image, including:

[0210] Determine the target normalized heat value of each target pixel in the target pixel set in the normalized trajectory heat map, where the target pixels in the target pixel set are pixels in the reference trajectory image whose pixel values ​​are preset values.

[0211] The normalized thermodynamic values ​​of the determined target are summed to obtain the total thermodynamic value.

[0212] Based on the reference trajectory image, the target trajectory image, and the sum of thermal values, the similarity between the first scene movement trajectory corresponding to the reference trajectory image and the second scene movement trajectory corresponding to the target trajectory image is determined.

[0213] In one possible implementation, the processor 1004 determines the similarity between the first scene movement trajectory corresponding to the reference trajectory image and the second scene movement trajectory corresponding to the target trajectory image based on the reference trajectory image, the target trajectory image, and the sum of thermal values, including:

[0214] The number of first trajectories in the reference trajectory image with pixel values ​​of preset values ​​is determined, and the number of second trajectories in the target trajectory image with pixel values ​​of preset values ​​is determined.

[0215] Determine the maximum number of trajectories between the first number of trajectories and the second number of trajectories;

[0216] Based on the sum of thermal values ​​and the maximum number of trajectories, the similarity between the first scene movement trajectory corresponding to the reference trajectory image and the second scene movement trajectory corresponding to the target trajectory image is determined.

[0217] In one possible implementation, the processor 1004 determines the target movement trajectory of the target cluster set among N cluster sets, including:

[0218] Obtain the average heatmap of M trajectory heatmaps corresponding to M trajectory images in the target cluster set from N cluster sets, where M is an integer greater than or equal to 1;

[0219] Based on M trajectory heatmaps and the average heatmap, determine the target movement trajectory of the target cluster among N cluster sets.

[0220] In one possible implementation, the processor 1004 determines the target movement trajectory of the target cluster set among N cluster sets based on M trajectory heatmaps and the average heatmap, including:

[0221] Determine the M value differences between each trajectory heatmap and the average heatmap in the M trajectory heatmaps;

[0222] The trajectory heatmap corresponding to the value difference information that satisfies the condition of minimizing the difference among M value difference information is determined as the target trajectory heatmap;

[0223] The scene movement trajectory corresponding to the target trajectory heatmap is determined as the target movement trajectory of the target cluster set among N cluster sets.

[0224] In one possible implementation, the target movement trajectory includes multiple trajectory points, each trajectory point corresponding to a trajectory data point, and the processor 1004 is further configured to perform any one or two of the following steps:

[0225] Based on the position information included in the trajectory data corresponding to the trajectory points on the target's movement trajectory, a displacement command is generated, and the virtual character is controlled to move according to the displacement command.

[0226] Based on the action information included in the trajectory data corresponding to the trajectory points on the target's movement trajectory, action commands are generated, and the virtual character is controlled to perform game actions at the corresponding trajectory points according to the action commands.

[0227] In one possible implementation, the processor 1004 is also used to perform the following operations:

[0228] Obtain trajectory data about the movement trajectory of the reference scene reported by the user terminal, and determine the trajectory length based on the reported trajectory data;

[0229] If the determined trajectory length meets the length filtering condition, a trajectory image is generated based on the trajectory data of the reference scene movement trajectory, and the trajectory image is placed into the trajectory image set.

[0230] If the determined trajectory length does not meet the length filtering criteria, then delete the trajectory data of the reference scene movement trajectory.

[0231] It should be understood that the smart device 1000 described in the embodiments of this application can execute the foregoing text. Figures 3a to 8d The description of the trajectory data processing method in the corresponding embodiment can also be performed as described above. Figure 9 The description of the trajectory data processing device 900 in the corresponding embodiment will not be repeated here. Furthermore, the beneficial effects of using the same method will also not be repeated here.

[0232] In the several embodiments provided in this application, it should be understood that the disclosed methods, apparatuses, and systems can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for example, the division of units is merely a logical functional division, and other division methods may exist in actual implementation; for example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces, and the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.

[0233] Furthermore, it should be noted that this application embodiment also provides a computer storage medium, which stores the computer program executed by the trajectory data processing device 900 mentioned above. This computer program includes program instructions, and when the processor executes these program instructions, it can execute the aforementioned... Figures 3a to 8d The methods described in the corresponding embodiments will not be repeated here. Furthermore, the beneficial effects of using the same methods will also not be repeated. For technical details not disclosed in the computer storage medium embodiments related to this application, please refer to the description of the method embodiments of this application. As an example, program instructions can be deployed on a smart device, or executed on multiple smart devices located in one location, or executed on multiple smart devices distributed in multiple locations and interconnected through a communication network. Multiple smart devices distributed in multiple locations and interconnected through a communication network can constitute a blockchain system.

[0234] According to one aspect of this application, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a smart device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, enabling the smart device to perform the aforementioned... Figures 3a to 8d The methods described in the corresponding embodiments are therefore not repeated here.

[0235] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The program can be stored in a computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. The storage medium can be a magnetic disk, optical disk, read-only memory (ROM), or random access memory (RAM), etc.

[0236] The above-disclosed embodiments are merely some of the embodiments of this application, and should not be construed as limiting the scope of this application. Those skilled in the art can understand that implementing all or part of the above embodiments and making equivalent changes in accordance with the claims of this application are still within the scope of this application.

Claims

1. A method for processing trajectory data, characterized in that, When applied to game scenarios, the method includes: Obtain a set of trajectory images, which includes multiple trajectory images, each of which is generated based on trajectory data of scene movement trajectory in the target scene; The trajectory images in the trajectory image set are converted into trajectory heatmaps, and a similarity matrix is ​​determined based on the trajectory heatmap corresponding to each trajectory image. The matrix elements in the similarity matrix are used to represent the similarity between the scene movement trajectories corresponding to the two trajectory images. Based on the similarity matrix, the trajectory images recorded in the trajectory image set are clustered to obtain the clustering result. The clustering result includes N cluster sets, where multiple trajectory images that are determined to be of the same category by the clustering process belong to one cluster set, and N is an integer greater than or equal to 1. Determine the target movement trajectory of the target cluster set among the N cluster sets, and determine the target movement path based on the target movement trajectory; The target movement trajectory includes multiple trajectory points, each trajectory point corresponding to a trajectory data point, and the method further includes any one or two of the following steps: Based on the position information included in the trajectory data corresponding to the trajectory points on the target movement trajectory, a displacement command is generated, and the virtual character is controlled to move its position according to the displacement command; Based on the action information included in the trajectory data corresponding to the trajectory points on the target movement trajectory, action commands are generated, and the virtual character is controlled to perform game actions at the corresponding trajectory points according to the action commands.

2. The method as described in claim 1, characterized in that, The trajectory images in the trajectory image set are binary images. Converting the trajectory images in the trajectory image set into a trajectory heatmap includes: A low-pass filter is used to perform low-pass filtering on the target trajectory images in the trajectory image set to obtain the target trajectory heatmap corresponding to the target trajectory image.

3. The method as described in claim 2, characterized in that, The target trajectory image includes K pixels, each pixel corresponding to a pixel value; the target trajectory heatmap includes K heat points, each heat point corresponding to a heat value; the K heat points and the K pixels are in one-to-one correspondence, where K is an integer greater than or equal to 1; the low-pass filter is a P×P matrix, which includes P×P matrix points, each matrix point corresponding to a matrix element value; the center point of the P×P matrix is ​​the anchor point, where P is an integer greater than or equal to 1; The method further includes: The matrix element value corresponding to the anchor point and the target pixel value corresponding to the target pixel among the K pixels are calculated to obtain the intermediate point calculation value; Based on the set of calculated values ​​of the intermediate point and the neighboring point, the target point thermal value of the target thermal point corresponding to the target pixel is determined; The neighborhood point calculation value set includes the neighborhood point calculation values ​​of all other matrix points in the P×P matrix except for the anchor point; each neighborhood point calculation value is calculated based on the matrix element values ​​corresponding to other matrix points and the pixel values ​​of the matching points corresponding to other matrix points among K pixels.

4. The method as described in claim 2 or 3, characterized in that, The method further includes: Determine the maximum thermal value among the K thermal values ​​corresponding to K thermal points in the target trajectory heatmap; Based on the thermal values ​​of each thermal point in the target trajectory heatmap and the maximum thermal value, a normalized trajectory heatmap is determined. The normalized trajectory heatmap includes K normalized heat points, and the normalized heat value corresponding to each normalized heat point is determined by the ratio between the heat value corresponding to each heat point and the maximum heat value.

5. The method as described in claim 4, characterized in that, The step of determining the similarity matrix based on the trajectory heatmap corresponding to each trajectory image includes: Determine the target normalized heat value of each target pixel in the target pixel set corresponding to the normalized heat point in the normalized trajectory heat map, wherein the target pixels included in the target pixel set are pixels in the reference trajectory image whose pixel values ​​are preset values. The normalized thermodynamic values ​​of the determined target are summed to obtain the total thermodynamic value. Based on the reference trajectory image, the target trajectory image, and the sum of the thermal values, the similarity between the first scene movement trajectory corresponding to the reference trajectory image and the second scene movement trajectory corresponding to the target trajectory image is determined.

6. The method as described in claim 5, characterized in that, Determining the similarity between the first scene movement trajectory corresponding to the reference trajectory image and the second scene movement trajectory corresponding to the target trajectory image based on the reference trajectory image, the target trajectory image, and the sum of the thermal values ​​includes: The number of first trajectories in the reference trajectory image whose pixel value is the preset value is determined, and the number of second trajectories in the target trajectory image whose pixel value is the preset value is determined. Determine the maximum number of trajectories between the first number of trajectories and the second number of trajectories; Based on the sum of the thermal values ​​and the maximum number of trajectories, the similarity between the first scene movement trajectory corresponding to the reference trajectory image and the second scene movement trajectory corresponding to the target trajectory image is determined.

7. The method as described in claim 1, characterized in that, Determining the target movement trajectory of the target cluster set among the N cluster sets includes: Obtain the average heatmap of M trajectory heatmaps corresponding to M trajectory images included in the target cluster set among the N cluster sets, where M is an integer greater than or equal to 1; Based on the M trajectory heatmaps and the average heatmap, the target movement trajectory of the target cluster set in the N cluster sets is determined.

8. The method as described in claim 7, characterized in that, The step of determining the target movement trajectory of the target cluster set among the N cluster sets based on the M trajectory heatmaps and the average heatmap includes: Determine the M value differences between each trajectory heatmap and the average heatmap in the M trajectory heatmaps; The trajectory heatmap corresponding to the value difference information that satisfies the condition of minimizing the difference among the M value difference information is determined as the target trajectory heatmap; The scene movement trajectory corresponding to the target trajectory heatmap is determined as the target movement trajectory of the target cluster set in the N cluster sets.

9. The method as described in claim 1, characterized in that, The method further includes: Obtain trajectory data about the movement trajectory of the reference scene reported by the user terminal, and determine the trajectory length based on the reported trajectory data; If the determined trajectory length meets the length filtering condition, a trajectory image is generated based on the trajectory data of the reference scene movement trajectory, and the trajectory image is placed into the trajectory image set; If the determined trajectory length does not meet the length filtering condition, then the trajectory data of the reference scene movement trajectory is deleted.

10. A trajectory data processing device, characterized in that, The device, used in game scenarios, includes: The acquisition unit is used to acquire a set of trajectory images, the set of trajectory images including multiple trajectory images, each trajectory image being generated based on trajectory data of scene movement trajectory in the target scene; The processing unit is used to convert the trajectory images in the trajectory image set into trajectory heatmaps, and determine a similarity matrix based on the trajectory heatmap corresponding to each trajectory image. The matrix elements in the similarity matrix are used to represent the similarity between the scene movement trajectories corresponding to the two trajectory images. The processing unit is further configured to perform clustering processing on the trajectory images recorded in the trajectory image set according to the similarity matrix, and obtain clustering processing results. The clustering processing results include: N cluster sets, where multiple trajectory images determined to be of the same category by the clustering processing belong to one cluster set, and N is an integer greater than or equal to 1. The processing unit is further configured to determine the target movement trajectory of the target cluster set among the N cluster sets, and determine the target movement path based on the target movement trajectory; The target movement trajectory includes multiple trajectory points, each trajectory point corresponding to a trajectory data point. The processing unit is also used to perform any one or two of the following steps: Based on the position information included in the trajectory data corresponding to the trajectory points on the target movement trajectory, a displacement command is generated, and the virtual character is controlled to move its position according to the displacement command; Based on the action information included in the trajectory data corresponding to the trajectory points on the target movement trajectory, action commands are generated, and the virtual character is controlled to perform game actions at the corresponding trajectory points according to the action commands.

11. A smart device, characterized in that, It includes a memory and a processor, the memory storing a computer program that, when executed by the processor, causes the processor to perform the method as described in any one of claims 1 to 9.

12. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, the computer program including program instructions that, when executed by a processor, cause the processor to perform the method as described in any one of claims 1 to 9.

13. A computer program product comprising computer instructions, characterized in that, The computer instructions are stored in a computer-readable storage medium, and when executed by a processor of a computer device, cause the computer device to perform the method as described in any one of claims 1 to 9.