A virtual character behavior and action simulation system and method based on artificial intelligence
Through the virtual character action simulation system based on artificial intelligence, problem frames in complementary animations are automatically identified and optimized, and the difficulties in animation quality evaluation and optimization in the prior art are solved, and natural and smooth animation effects are achieved.
Patent Information
- Application Number
- CN202411965699.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-30
- Publication Date
- 2025-08-22
- Estimated Expiration
- 2044-12-30
AI Technical Summary
The existing virtual character animation complementary technology cannot automatically identify defects in the animation, resulting in unnatural motion transitions, inconsistent motion speeds and distortion of morphology, and it is difficult to conduct effective quality evaluation and optimization.
Through an artificial intelligence-based method, we identify keyframes of virtual characters' actions, generate complementary frame animations, and use smoothness indicators, physical consistency scores and action consistency indicators for quality evaluation, automatically identify problem frames and provide adjustment suggestions.
Automatic evaluation and optimization of complementary animation quality is realized, manual intervention is reduced, ensuring that the animation is natural, smooth and in line with physical laws, and reducing production costs and time.
Smart Images

Figure CN119850802B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of artificial intelligence technology, and in particular to an artificial intelligence-based virtual character behavior and action simulation system and method. Background Art
[0002] With the rapid development of computer graphics and artificial intelligence technologies, virtual character behavioral animation has been widely used in interactive entertainment and simulation systems such as film, games, virtual reality (VR), and augmented reality (AR). To ensure the naturalness and smoothness of these virtual character movements, interpolated frame animation has become an important method for optimizing virtual character motion performance. Interpolated frame animation involves inserting additional animation frames between two main actions to achieve smoother transitions and more detailed performance, enhancing the realism and coherence of the animation.
[0003] Although several automated interpolation generation methods and algorithms have been proposed, solutions based on interpolation techniques are relatively common. These methods can reduce manual intervention to a certain extent when handling simple and regular animation tasks. However, animations generated using interpolation techniques often suffer from issues such as unnatural transitions, inconsistent movement speeds, and distorted motion forms. Furthermore, existing technologies for generating interpolation animations are often unable to automatically identify defects in these interpolated animations, let alone provide recommendations for correcting these defects, further increasing the difficulty and cost of production. Summary of the Invention
[0004] The purpose of the present invention is to provide a virtual character behavior and action simulation system and method based on artificial intelligence to solve the problems raised in the above background technology.
[0005] In order to solve the above technical problems, the present invention provides the following technical solutions:
[0006] A method for simulating virtual character behavior based on artificial intelligence, comprising the following steps:
[0007] Step S100. Acquire action data of the virtual character from the database, analyze the acquired action data of the virtual character to obtain key frame data of each action of the virtual character, and establish a key frame data set of the virtual character based on the key frame data;
[0008] Step S200: Obtaining behavior instructions of the virtual character, searching the key frame data set based on the behavior instructions of the virtual character, thereby obtaining a motion sequence of the virtual character corresponding to the behavior instructions; generating a transition frame between two adjacent actions in the motion sequence based on the motion sequence of the virtual character, thereby obtaining a frame-filling animation between the two actions of the virtual character;
[0009] Step S300: Obtaining motion data corresponding to the interframe animation between two actions of the virtual character, analyzing the motion data corresponding to the interframe animation, thereby identifying frames of interest in the interframe animation; performing a quality assessment on the frames of interest based on the motion data; and identifying problematic frames in the interframe animation based on the quality assessment results;
[0010] Step S400. Analyze the problem frames in the interframe animation, generate corresponding adjustment suggestions, and output the problem frames and the corresponding adjustment suggestions to relevant personnel, who then adjust and optimize the interframe animation based on the adjustment suggestions; perform a secondary quality assessment on the adjusted and optimized interframe animation, and perform corresponding processing based on the secondary quality assessment results.
[0011] Furthermore, step S100 includes:
[0012] S101. Obtaining motion data of a virtual character from a database, where the motion data is based on motion capture technology or a manually designed animation dataset, each piece of data comprising a time series of motion data, wherein each time point corresponds to posture information (e.g., joint angles, positions, etc.) of each joint or bone of the character. The motion data is composed of a plurality of frames, each frame representing the posture of the virtual character at a particular moment, and each piece of motion data is represented as a motion sequence P, where P = {p1, p2, ..., pn}, where p1 represents the virtual character's posture in the first frame, p2 represents the virtual character's posture in the second frame, and so on, pn represents the virtual character's posture in the nth frame, and n represents the number of frames in the motion sequence P;
[0013] S102. Analyze the acquired action data of the virtual character to identify the key frames of each action of the virtual character, wherein the key frames refer to the action start frame and the action end frame of the virtual character; the key frame identification process is as follows:
[0014] According to each action sequence of the virtual character, the difference Δpi between the virtual character postures corresponding to frame pi and frame pi+1 is calculated, and Δpi=||(pi+1)-pi||, where ||(pi+1)-pi|| represents the Euclidean distance between frame pi and frame pi+1, which is used to quantify the degree of change of the virtual character's action between the two frames. If the action changes greatly, the difference Δpi will be large, otherwise it will be small; summarize the differences Δpi, and draw the corresponding difference change curve Q1, and the horizontal axis of the difference change curve Q1 is the sequential number of the differences Δpi, and the vertical axis of the difference change curve Q1 is the difference Δpi; if a certain section of the difference change curve Q1 is the first If a segment of the difference change curve Q1 shows an increasing trend, the size relationship between the vertical axis Δpi of the corresponding difference change curve segment and the threshold ΔTstart is compared. If Δpi is greater than the threshold ΔTstart, the frame pi+1 is marked as the action start frame p_start of the virtual character. If a segment of the difference change curve Q1 shows a decreasing trend for the first time, the size relationship between the vertical axis Δpi of the corresponding difference change curve segment and the threshold ΔTend is compared. If Δpi is less than the threshold ΔTend, the frame pi+1 is marked as the action end frame p_end of the virtual character. For each action sequence of the virtual character, the corresponding action start frame and action end frame are summarized to identify the key frame of the corresponding action sequence.
[0015] S103. According to the key frame of each action of the identified virtual character, the action data of the virtual character is divided to obtain the key frame data corresponding to the action data of the virtual character, and the key frame data corresponding to each action data of the virtual character are summarized to establish a key frame data set G of the virtual character, and G={g1,g2,...,gm}, where g1 represents the key frame data of the first action of the virtual character, g2 represents the key frame data of the second action of the virtual character, and so on, gm represents the key frame data of the mth action of the virtual character, and m represents the action number of the virtual character.
[0016] By analyzing the virtual character's motion data and identifying keyframes, the entire motion sequence can be divided into a more streamlined keyframe data set, thereby reducing the amount of computation required. By calculating the differences between motion frames and using this as a basis for identifying keyframes, redundant frames that have little impact on the performance of the motion can be effectively eliminated, improving the performance quality of the virtual character's motion. In the rendering of animation effects, reducing unnecessary intermediate frames helps to reduce the unnaturalness and smoothness of transition effects. Keyframe identification provides an important reference for subsequent motion generation and editing, especially in animation production and game development, where the animation of virtual characters often relies on keyframes. By accurately identifying the start and end frames of an action, animators and developers can more accurately control the smoothness and expressiveness of the character's motion.
[0017] Furthermore, step S200 includes:
[0018] S201. Obtaining the behavior instructions of the virtual character, wherein the behavior instructions of the virtual character are composed of the action numbers of the corresponding virtual character, and the behavior instructions of the virtual character are represented by B, and B={b1,b2,...,bk}, wherein b1 represents the first action number of the virtual character, b2 represents the second action number of the virtual character, and so on, bk represents the second action number of the virtual character; k represents the total number of action numbers corresponding to the behavior instructions of the virtual character, and k≤m; searching in the key frame data set G according to the behavior instructions of the virtual character, so as to obtain the key frame data sequence corresponding to the behavior instructions of the virtual character. Column, obtain the corresponding action data in the database according to the key frame data sequence, mark the key frame position in the action data, filter the action data based on the key frame mark, retain the data from the action start frame to the action end frame for each action data, sort the filtered action data according to the behavior instructions of the virtual character, and thus obtain the motion sequence D of the virtual character corresponding to the behavior instruction, and D={d1,d2,...,dk}, where d1 represents the motion data corresponding to the behavior instruction b1, d2 represents the motion data corresponding to the behavior instruction b2, and so on, dk represents the motion data corresponding to the behavior instruction bk;
[0019] S202. Perform physical simulation on the motion sequence D of the virtual character to obtain the physical properties of the virtual character at each key frame moment; for two adjacent actions bj and bj+1 in the motion sequence of the virtual character, obtain the action end frame pj_end of bj and the action start frame pj+1_start of bj+1 according to the corresponding key frame data, and generate the transition frame pt between the adjacent actions bj and bj+1 by interpolation method, and the corresponding calculation formula is: p=(1-α)·pj_end+α·pj+1_start; wherein α represents the interpolation coefficient and takes the value of [0,1]; according to the physical properties of the virtual character at each key frame moment, mark the motion data corresponding to the two adjacent actions bj and bj+1 in the motion sequence of the virtual character, mark the key frames and corresponding physical states of the adjacent actions bj and bj+1 and the generated transition frames, and use these data as training data; through the trained model, input the end frame and start frame of the two adjacent actions, the model will generate a corresponding interpolation frame sequence, and combine the interpolation frame sequence with the motion sequence D to obtain the interpolation frame animation between the two actions of the virtual character.
[0020] Furthermore, step S300 includes:
[0021] S301. Obtain interlaced animation between two actions of the virtual character. For each transition frame p corresponding to the interlaced animation, obtain the corresponding motion data of the virtual character and calculate the motion change ΔMp(t) between two adjacent transition frames. The specific formula is:
[0022] ΔMp(t)={Σe∈[1,E],[Mep(t+1)-Mep(t)] 2}^(1 / 2);
[0023] Where t represents the time point, Mep(t+1) represents the e-th kinematic feature of the transition frame corresponding to the time point t+1, and Mep(t) represents the e-th kinematic feature of the transition frame corresponding to the time point t; E represents the number of kinematic features, and the kinematic features include the positions of the virtual character's joints or bones, changes in joint angles, the rotation center of the skeleton, etc.; the motion changes ΔMp(t) between all adjacent transition frames are summarized, and the motion change curve Q2 is drawn with the time point as the horizontal axis and the motion change ΔMp(t) as the vertical axis. The tangent slope R corresponding to each data point on the motion change curve Q2 is calculated, and the tangent slope R corresponding to each data point is compared with the set threshold Rth. The transition frames of the data points whose tangent slope R is greater than the set threshold Rth are marked as focus frames;
[0024] S302. Summarize all the focus frames in the interpolation animation between two actions of the virtual character. For each focus frame, combine the motion change ΔMp(t) corresponding to each transition frame p in the interpolation animation to calculate the smoothness index S of the focus frame. The corresponding calculation formula is:
[0025] Sp(t)=1 / {1+Σt∈[1,T],ΔMp(t)·β};
[0026] Where T represents the total number of time points corresponding to the interframe animation between two actions of the virtual character, which is equal to the number of transition frames corresponding to the interframe animation between two actions of the virtual character; β represents the smoothness weight, which ranges from 0 to 1; the physical consistency score SW corresponding to each frame of interest is calculated, and the specific calculation formula is:
[0027] SWp(t)=1-|θp(t+1)-θp(t)| / (θ_max-θ_min);
[0028] Among them, θp(t+1) represents the joint angle value of the virtual character in the transition frame corresponding to time point t+1, θp(t) represents the joint angle value of the virtual character in the transition frame corresponding to time point t; θ_max-θ_min represents the maximum angle variation range allowed for the virtual character's joints; calculate the action consistency index C corresponding to the focus frame in the interpolated frame animation between two actions of the virtual character, and the corresponding calculation formula is:
[0029] Cp(t)={(1 / T)Σt∈[1,T],Σe∈[1,E], ||Mep(t)-Mp(t)||} / T;
[0030] Among them, M(pt) represents the expected motion characteristics of the transition frame corresponding to time point t;
[0031] S303. According to the smoothness index S, physical consistency score SW and motion consistency index C of the focus frame, calculate the corresponding comprehensive quality score SQ, and SQp(t)=w1·Sp(t)+w2·SWp(t)+w3·Cp(t); wherein w1, w2 and w3 are the weight coefficients of the smoothness index S, physical consistency score SW and motion consistency index C, respectively, and the sum of the weights is 1; compare the comprehensive quality score SQ of the focus frame with the threshold SQ0, and mark the focus frame with a comprehensive quality score SQ less than the threshold SQ0 as a problem frame.
[0032] Furthermore, step S400 includes:
[0033] S401. Obtain the problem frame of the interpolation animation between two actions of the virtual character, extract the smoothness index S, physical consistency score SW, and action consistency index C corresponding to the problem frame, and compare the smoothness index S, physical consistency score SW, and action consistency index C with the corresponding smoothness index threshold S0, physical consistency score threshold SW0, and action consistency index threshold C0 respectively; if the smoothness index S is less than the smoothness index threshold S0, it means that the defect corresponding to the problem frame is that the transition speed is too fast or too slow, and the improvement suggestion is "optimize the interpolation algorithm or increase or decrease the number of interpolation frames"; if the physical consistency score SW is less than the physical consistency score threshold SW0, it means that the defect corresponding to the problem frame is a violation of physical laws, and the improvement suggestion is "adjust the physical properties of the interpolation animation"; if the action consistency index C is greater than the action consistency index threshold C0, it means that the defect corresponding to the problem frame is inconsistent behavior of the virtual character, and the improvement suggestion is "adjust the transition logic between actions and optimize the selection and sorting of action sequences";
[0034] S402. Output the problem frames and corresponding adjustment suggestions to relevant personnel, who will adjust and optimize the frame-filling animation based on the adjustment suggestions; and perform a secondary quality assessment on the adjusted frame-filling animation to obtain a comprehensive quality score SQ1 corresponding to the secondary quality assessment, and compare the comprehensive quality score SQ1 with the threshold SQ0; if the comprehensive quality score SQ1 is less than the threshold SQ0, repeat the content of S401 until the corresponding comprehensive quality score is greater than or equal to the threshold SQ0.
[0035] An artificial intelligence-based virtual character behavior and motion simulation system, comprising: a motion data acquisition and analysis module, a behavior instruction parsing and motion sequence generation module, a frame-filling animation generation module, a frame-filling animation quality assessment and problem identification module, and a frame-filling animation optimization and adjustment module;
[0036] The motion data acquisition and analysis module acquires the motion data of the virtual character from the database, analyzes the acquired motion data of the virtual character, thereby obtaining key frame data of each motion of the virtual character, and establishes a key frame data set of the virtual character based on the key frame data;
[0037] The behavior instruction parsing and motion sequence generation module obtains the behavior instructions of the virtual character, searches the key frame data set based on the behavior instructions of the virtual character, and thus obtains the motion sequence of the virtual character corresponding to the behavior instructions;
[0038] The interpolation frame animation generation module generates transition frames between two adjacent actions in the motion sequence according to the motion sequence of the virtual character, thereby obtaining the interpolation frame animation between the two actions of the virtual character;
[0039] The interframe animation quality assessment and problem identification module obtains motion data corresponding to the interframe animation between two actions of the virtual character, analyzes the motion data corresponding to the interframe animation, and thus identifies the frames of interest in the interframe animation; combines the motion data to perform quality assessment on the frames of interest; and based on the quality assessment results, identifies problem frames in the interframe animation;
[0040] The frame-interpolation animation optimization and adjustment module analyzes the problem frames in the frame-interpolation animation, generates corresponding adjustment suggestions, and outputs the problem frames and corresponding adjustment suggestions to relevant personnel, who then adjust and optimize the frame-interpolation animation based on the adjustment suggestions; a secondary quality assessment is conducted on the adjusted and optimized frame-interpolation animation, and corresponding processing is performed based on the results of the secondary quality assessment.
[0041] Furthermore, the motion data acquisition and analysis module includes a motion data acquisition unit, a motion data analysis unit, and a key frame data set construction unit;
[0042] The motion data acquisition unit acquires the motion data of the virtual character from the database; the motion data analysis unit analyzes the acquired motion data, calculates the differences between the motion frames, draws the difference change curve, and identifies the key frames of each action according to the threshold; the key frame data set construction unit establishes the key frame data set of the virtual character based on the key frame data.
[0043] Furthermore, the behavior instruction parsing and motion sequence generation module includes a behavior instruction acquisition unit and a motion sequence generation unit;
[0044] The behavior instruction acquisition unit receives the behavior instruction of the virtual character; the motion sequence generation unit searches and obtains the corresponding key frame data sequence in the key frame data set according to the behavior instruction, and generates the motion sequence of the virtual character through screening and sorting.
[0045] The frame-interpolation animation generation module includes a physical simulation unit, a transition frame generation unit and a frame-interpolation animation generation unit;
[0046] The physical simulation unit simulates the physical properties of the virtual character at each key frame moment, thereby obtaining the physical properties of the virtual character at each key frame moment; the transition frame generation unit generates a transition frame between two actions based on the motion sequence and physical simulation of the virtual character; the interpolation frame animation generation unit summarizes the transition frames between two adjacent actions of the virtual character, thereby generating an interpolation frame animation.
[0047] Furthermore, the frame-filling animation quality assessment and problem identification module includes a motion variation calculation unit, a focus frame identification unit, and a problem frame annotation unit;
[0048] The motion change calculation unit calculates the motion change between each transition frame in the frame-complementing animation; the focus frame identification unit identifies the focus frame according to the motion change; the problem frame labeling unit calculates the comprehensive quality score of the focus frame, identifies and labels the problem frame. The focus frame identification unit identifies the focus frame according to the motion change; the problem frame labeling unit calculates the comprehensive quality score of the focus frame, identifies the problem frame according to the comprehensive quality score, and labels the problem frame.
[0049] Furthermore, the frame-filling animation optimization and adjustment module includes a problem frame analysis unit, an optimization suggestion generation unit, and a secondary quality assessment unit;
[0050] The problem frame analysis unit analyzes the motion data of the problem frame and identifies the corresponding defects; the optimization suggestion generation unit generates corresponding adjustment suggestions to relevant personnel based on the analysis results of the problem frame analysis unit, and the relevant personnel make corresponding optimization adjustments; the secondary quality assessment unit performs a secondary quality assessment on the adjusted frame-filling animation and performs corresponding processing based on the secondary quality assessment results.
[0051] Compared with existing technologies, the present invention offers the following advantages: It automatically identifies defects in interpolated animations through an artificial intelligence-based approach and generates specific adjustment suggestions based on these defects, significantly reducing the need for manual intervention. Existing interpolation methods typically only generate interpolated animations but fail to effectively assess and optimize the quality of the resulting animations. However, the present invention enables real-time quality assessment during the interpolation process, ensuring that the resulting animations are more natural, smooth, and physically consistent. The present invention calculates the motion change between adjacent transition frames and identifies frames of interest through tangent slope analysis. It then conducts a comprehensive quality assessment of interpolated animations using smoothness metrics, physical consistency scores, and motion consistency metrics. This method accurately detects unnatural and abrupt changes in transition animations, promptly locating problematic frames and providing clear guidance for further optimizing interpolated animations. After identifying problematic frames, the present invention provides specific adjustment suggestions based on their smoothness, physical consistency, and motion consistency. For example, if certain problematic frames exhibit poor smoothness, the interpolation algorithm can be optimized or the number of interpolated frames adjusted; if physical violations exist, physical properties need to be adjusted; and if character behavior is inconsistent, the transition logic between actions needs to be optimized. This intelligent adjustment mechanism reduces reliance on manual adjustments during the production process, reducing production costs and time. The present invention also includes a secondary quality assessment of the adjusted and optimized interpolated animation to ensure that the adjusted animation meets the desired quality standards. If the secondary assessment results fail to meet the preset quality threshold, the present invention will iterate on the optimization until the generated interpolated animation meets the requirements. This closed-loop optimization process ensures that the final animation quality is optimal. BRIEF DESCRIPTION OF THE DRAWINGS
[0052] The accompanying drawings are used to provide a further understanding of the present invention and constitute a part of the specification. Together with the embodiments of the present invention, they are used to explain the present invention and do not constitute a limitation of the present invention. In the accompanying drawings:
[0053] Figure 1 This is a schematic diagram of a module of a virtual character behavior and action simulation system based on artificial intelligence of the present invention. DETAILED DESCRIPTION
[0054] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of the present invention.
[0055] See also Figure 1 , the present invention provides a technical solution:
[0056] An artificial intelligence-based virtual character behavior and motion simulation system, comprising: a motion data acquisition and analysis module, a behavior instruction parsing and motion sequence generation module, a frame-filling animation generation module, a frame-filling animation quality assessment and problem identification module, and a frame-filling animation optimization and adjustment module;
[0057] The motion data acquisition and analysis module acquires the motion data of the virtual character from the database, analyzes the acquired motion data of the virtual character, thereby obtaining key frame data of each motion of the virtual character, and establishes a key frame data set of the virtual character based on the key frame data;
[0058] The behavior instruction parsing and motion sequence generation module obtains the behavior instructions of the virtual character, searches the key frame data set based on the behavior instructions of the virtual character, and thus obtains the motion sequence of the virtual character corresponding to the behavior instructions;
[0059] The interpolation frame animation generation module generates transition frames between two adjacent actions in the motion sequence according to the motion sequence of the virtual character, thereby obtaining the interpolation frame animation between the two actions of the virtual character;
[0060] The interframe animation quality assessment and problem identification module obtains motion data corresponding to the interframe animation between two actions of the virtual character, analyzes the motion data corresponding to the interframe animation, and thus identifies the frames of interest in the interframe animation; combines the motion data to perform quality assessment on the frames of interest; and based on the quality assessment results, identifies problem frames in the interframe animation;
[0061] The frame-interpolation animation optimization and adjustment module analyzes the problem frames in the frame-interpolation animation, generates corresponding adjustment suggestions, and outputs the problem frames and corresponding adjustment suggestions to relevant personnel, who then adjust and optimize the frame-interpolation animation based on the adjustment suggestions; a secondary quality assessment is conducted on the adjusted and optimized frame-interpolation animation, and corresponding processing is performed based on the results of the secondary quality assessment.
[0062] The motion data acquisition and analysis module includes a motion data acquisition unit, a motion data analysis unit, and a key frame data set construction unit;
[0063] The motion data acquisition unit acquires the motion data of the virtual character from the database; the motion data analysis unit analyzes the acquired motion data, calculates the differences between the motion frames, draws the difference change curve, and identifies the key frames of each action according to the threshold; the key frame data set construction unit establishes the key frame data set of the virtual character based on the key frame data.
[0064] The behavior instruction parsing and motion sequence generation module includes a behavior instruction acquisition unit and a motion sequence generation unit;
[0065] The behavior instruction acquisition unit receives the behavior instruction of the virtual character; the motion sequence generation unit searches and obtains the corresponding key frame data sequence in the key frame data set according to the behavior instruction, and generates the motion sequence of the virtual character through screening and sorting.
[0066] The frame-interpolation animation generation module includes a physical simulation unit, a transition frame generation unit and a frame-interpolation animation generation unit;
[0067] The physical simulation unit simulates the physical properties of the virtual character at each key frame moment, thereby obtaining the physical properties of the virtual character at each key frame moment; the transition frame generation unit generates a transition frame between two actions based on the motion sequence and physical simulation of the virtual character; the interpolation frame animation generation unit summarizes the transition frames between two adjacent actions of the virtual character, thereby generating an interpolation frame animation.
[0068] The frame-filling animation quality assessment and problem identification module includes a motion change calculation unit, a focus frame identification unit, and a problem frame annotation unit;
[0069] The motion change calculation unit calculates the motion change between each transition frame in the frame-complementing animation; the focus frame identification unit identifies the focus frame according to the motion change; the problem frame labeling unit calculates the comprehensive quality score of the focus frame, identifies and labels the problem frame. The focus frame identification unit identifies the focus frame according to the motion change; the problem frame labeling unit calculates the comprehensive quality score of the focus frame, identifies the problem frame according to the comprehensive quality score, and labels the problem frame.
[0070] The frame-filling animation optimization and adjustment module includes a problem frame analysis unit, an optimization suggestion generation unit, and a secondary quality assessment unit;
[0071] The problem frame analysis unit analyzes the motion data of the problem frame and identifies the corresponding defects; the optimization suggestion generation unit generates corresponding adjustment suggestions to relevant personnel based on the analysis results of the problem frame analysis unit, and the relevant personnel make corresponding optimization adjustments; the secondary quality assessment unit performs a secondary quality assessment on the adjusted frame-filling animation and performs corresponding processing based on the secondary quality assessment results.
[0072] A method for simulating virtual character behavior based on artificial intelligence, comprising the following steps:
[0073] Step S100. Acquire action data of the virtual character from the database, analyze the acquired action data of the virtual character to obtain key frame data of each action of the virtual character, and establish a key frame data set of the virtual character based on the key frame data;
[0074] Step S200: Obtaining behavior instructions of the virtual character, searching the key frame data set based on the behavior instructions of the virtual character, thereby obtaining a motion sequence of the virtual character corresponding to the behavior instructions; generating a transition frame between two adjacent actions in the motion sequence based on the motion sequence of the virtual character, thereby obtaining a frame-filling animation between the two actions of the virtual character;
[0075] Step S300: Obtaining motion data corresponding to the interframe animation between two actions of the virtual character, analyzing the motion data corresponding to the interframe animation, thereby identifying frames of interest in the interframe animation; performing a quality assessment on the frames of interest based on the motion data; and identifying problematic frames in the interframe animation based on the quality assessment results;
[0076] Step S400. Analyze the problem frames in the interframe animation, generate corresponding adjustment suggestions, and output the problem frames and the corresponding adjustment suggestions to relevant personnel, who then adjust and optimize the interframe animation based on the adjustment suggestions; perform a secondary quality assessment on the adjusted and optimized interframe animation, and perform corresponding processing based on the secondary quality assessment results.
[0077] Step S100 includes:
[0078] S101. Obtaining motion data of a virtual character from a database, where the motion data is based on motion capture technology or a manually designed animation dataset, each piece of data comprising a time series of motion data, wherein each time point corresponds to posture information (e.g., joint angles, positions, etc.) of each joint or bone of the character. The motion data is composed of a plurality of frames, each frame representing the posture of the virtual character at a particular moment, and each piece of motion data is represented as a motion sequence P, where P = {p1, p2, ..., pn}, where p1 represents the virtual character's posture in the first frame, p2 represents the virtual character's posture in the second frame, and so on, pn represents the virtual character's posture in the nth frame, and n represents the number of frames in the motion sequence P;
[0079] S102. Analyze the acquired action data of the virtual character to identify the key frames of each action of the virtual character, wherein the key frames refer to the action start frame and the action end frame of the virtual character; the key frame identification process is as follows:
[0080] According to each action sequence of the virtual character, the difference Δpi between the virtual character postures corresponding to frame pi and frame pi+1 is calculated, and Δpi=||(pi+1)-pi||, where ||(pi+1)-pi|| represents the Euclidean distance between frame pi and frame pi+1, which is used to quantify the degree of change of the virtual character's action between the two frames. If the action changes greatly, the difference Δpi will be large, otherwise it will be small; summarize the differences Δpi, and draw the corresponding difference change curve Q1, and the horizontal axis of the difference change curve Q1 is the sequential number of the differences Δpi, and the vertical axis of the difference change curve Q1 is the difference Δpi; if a certain section of the difference change curve Q1 is the first If a segment of the difference change curve Q1 shows an increasing trend, the size relationship between the vertical axis Δpi of the corresponding difference change curve segment and the threshold ΔTstart is compared. If Δpi is greater than the threshold ΔTstart, the frame pi+1 is marked as the action start frame p_start of the virtual character. If a segment of the difference change curve Q1 shows a decreasing trend for the first time, the size relationship between the vertical axis Δpi of the corresponding difference change curve segment and the threshold ΔTend is compared. If Δpi is less than the threshold ΔTend, the frame pi+1 is marked as the action end frame p_end of the virtual character. For each action sequence of the virtual character, the corresponding action start frame and action end frame are summarized to identify the key frame of the corresponding action sequence.
[0081] In this embodiment, since the action amplitude of the virtual character corresponding to each action sequence may be different, the difference thresholds ΔTstart and ΔTend at the start and end of the action may need to be adjusted. The appropriate thresholds are determined by calculating the difference distribution of the action sequence:
[0082] Calculate the difference Δpi between each frame, and calculate the mean and standard deviation μ and σ of the difference Δpi; set the dynamic threshold to ΔTstart = μ + kσ and ΔTend = μ − kσ, where k is a constant, which can usually be 1 or 2.
[0083] S103. According to the key frame of each action of the identified virtual character, the action data of the virtual character is divided to obtain the key frame data corresponding to the action data of the virtual character, and the key frame data corresponding to each action data of the virtual character are summarized to establish a key frame data set G of the virtual character, and G={g1,g2,...,gm}, where g1 represents the key frame data of the first action of the virtual character, g2 represents the key frame data of the second action of the virtual character, and so on, gm represents the key frame data of the mth action of the virtual character, and m represents the action number of the virtual character.
[0084] By analyzing the virtual character's motion data and identifying keyframes, the entire motion sequence can be divided into a more streamlined keyframe data set, thereby reducing the amount of computation required. By calculating the differences between motion frames and using this as a basis for identifying keyframes, redundant frames that have little impact on the performance of the motion can be effectively eliminated, improving the performance quality of the virtual character's motion. In the rendering of animation effects, reducing unnecessary intermediate frames helps to reduce the unnaturalness and smoothness of transition effects. Keyframe identification provides an important reference for subsequent motion generation and editing, especially in animation production and game development, where the animation of virtual characters often relies on keyframes. By accurately identifying the start and end frames of an action, animators and developers can more accurately control the smoothness and expressiveness of the character's motion.
[0085] Step S200 includes:
[0086] S201. Obtaining the behavior instructions of the virtual character, wherein the behavior instructions of the virtual character are composed of the action numbers of the corresponding virtual character, and the behavior instructions of the virtual character are represented by B, and B={b1,b2,...,bk}, wherein b1 represents the first action number of the virtual character, b2 represents the second action number of the virtual character, and so on, bk represents the second action number of the virtual character; k represents the total number of action numbers corresponding to the behavior instructions of the virtual character, and k≤m; searching in the key frame data set G according to the behavior instructions of the virtual character, so as to obtain the key frame data sequence corresponding to the behavior instructions of the virtual character. Column, obtain the corresponding action data in the database according to the key frame data sequence, mark the key frame position in the action data, filter the action data based on the key frame mark, retain the data from the action start frame to the action end frame for each action data, sort the filtered action data according to the behavior instructions of the virtual character, and thus obtain the motion sequence D of the virtual character corresponding to the behavior instruction, and D={d1,d2,...,dk}, where d1 represents the motion data corresponding to the behavior instruction b1, d2 represents the motion data corresponding to the behavior instruction b2, and so on, dk represents the motion data corresponding to the behavior instruction bk;
[0087] S202. Perform physical simulation on the motion sequence D of the virtual character to obtain the physical properties of the virtual character at each key frame moment; for two adjacent actions bj and bj+1 in the motion sequence of the virtual character, obtain the action end frame pj_end of bj and the action start frame pj+1_start of bj+1 according to the corresponding key frame data, and generate the transition frame pt between the adjacent actions bj and bj+1 by interpolation method, and the corresponding calculation formula is: p=(1-α)·pj_end+α·pj+1_start; wherein α represents the interpolation coefficient and takes the value of [0,1]; according to the physical properties of the virtual character at each key frame moment, mark the motion data corresponding to the two adjacent actions bj and bj+1 in the motion sequence of the virtual character, mark the key frames and corresponding physical states of the adjacent actions bj and bj+1 and the generated transition frames, and use these data as training data; through the trained model, input the end frame and start frame of the two adjacent actions, the model will generate a corresponding interpolation frame sequence, and combine the interpolation frame sequence with the motion sequence D to obtain the interpolation frame animation between the two actions of the virtual character.
[0088] In this embodiment, the specific contents of the physical simulation of the virtual character's motion sequence D are as follows: the virtual character's motion sequence is physically simulated using a known physics engine (e.g., a model based on mass, force, and acceleration). The physical properties of each action are calculated at each keyframe, including velocity, acceleration, gravity, etc. For example, the Newton-Euler method or a rigid body dynamics model is used to calculate the virtual character's physical state at each keyframe. The calculation model can be adjusted based on the virtual character's body structure (e.g., joints and bones) and external forces (e.g., gravity and friction).
[0089] The generation process of frame-by-frame animation is as follows:
[0090] Assume that the key frame data of the virtual character's actions bj and bj+1 include the following physical properties:
[0091] Position p(t): the three-dimensional coordinates of each joint of the virtual character's skeleton at time t;
[0092] Velocity v(t): linear velocity of the virtual character's joints, in m / s;
[0093] Acceleration a(t): linear acceleration of the virtual character's joints, in m / s2;
[0094] Rotation angle θ(t): The rotation angle of the character's joint, in degrees or radians;
[0095] Angular velocity ω(t): The angular velocity of the character's joints, in rad / s.
[0096] Transition frames (such as position, velocity, acceleration, etc.) generated through physical simulation and interpolation are used to train the model. The input of each training sample includes the following:
[0097] Input data: the end frame and start frame of two adjacent actions;
[0098] Target data: the actual data of the transition frame, including the position information, speed, acceleration and other physical properties of the transition frame.
[0099] The end frames and start frames of adjacent actions can be used as training sample inputs, and the generated transition frame data can be used as target outputs.
[0100] Through training using machine learning (such as deep neural networks and convolutional neural networks), the model learns how to generate a sequence of complementary frames based on the key frames of adjacent actions. The input of the model is the start and end frames of the action (including position, velocity, acceleration, etc.), and the output is the transition frame.
[0101] Step S300 includes:
[0102] S301. Obtain interlaced animation between two actions of the virtual character. For each transition frame p corresponding to the interlaced animation, obtain the corresponding motion data of the virtual character and calculate the motion change ΔMp(t) between two adjacent transition frames. The specific formula is:
[0103] ΔMp(t)={Σe∈[1,E],[Mep(t+1)-Mep(t)] 2}^(1 / 2);
[0104] Where t represents the time point, Mep(t+1) represents the e-th kinematic feature of the transition frame corresponding to the time point t+1, and Mep(t) represents the e-th kinematic feature of the transition frame corresponding to the time point t; E represents the number of kinematic features, and the kinematic features include the positions of the virtual character's joints or bones, changes in joint angles, the rotation center of the skeleton, etc.; the motion changes ΔMp(t) between all adjacent transition frames are summarized, and the motion change curve Q2 is drawn with the time point as the horizontal axis and the motion change ΔMp(t) as the vertical axis. The tangent slope R corresponding to each data point on the motion change curve Q2 is calculated, and the tangent slope R corresponding to each data point is compared with the set threshold Rth. The transition frames of the data points whose tangent slope R is greater than the set threshold Rth are marked as focus frames;
[0105] S302. Summarize all the focus frames in the interpolation animation between two actions of the virtual character. For each focus frame, combine the motion change ΔMp(t) corresponding to each transition frame p in the interpolation animation to calculate the smoothness index S of the focus frame. The corresponding calculation formula is:
[0106] Sp(t)=1 / {1+Σt∈[1,T],ΔMp(t)·β};
[0107] Where T represents the total number of time points corresponding to the interframe animation between two actions of the virtual character, which is equal to the number of transition frames corresponding to the interframe animation between two actions of the virtual character; β represents the smoothness weight, which ranges from 0 to 1; the physical consistency score SW corresponding to each frame of interest is calculated, and the specific calculation formula is:
[0108] SWp(t)=1-|θp(t+1)-θp(t)| / (θ_max-θ_min);
[0109] Among them, θp(t+1) represents the joint angle value of the virtual character in the transition frame corresponding to time point t+1, θp(t) represents the joint angle value of the virtual character in the transition frame corresponding to time point t; θ_max-θ_min represents the maximum angle variation range allowed for the virtual character's joints; calculate the action consistency index C corresponding to the focus frame in the interpolated frame animation between two actions of the virtual character, and the corresponding calculation formula is:
[0110] Cp(t)={(1 / T)Σt∈[1,T],Σe∈[1,E], ||Mep(t)-M(pt)||} / T;
[0111] Among them, Mp(t) represents the expected motion characteristics of the transition frame corresponding to time point t;
[0112] S303. According to the smoothness index S, physical consistency score SW and motion consistency index C of the focus frame, calculate the corresponding comprehensive quality score SQ, and SQp(t)=w1·Sp(t)+w2·SWp(t)+w3·Cp(t); wherein w1, w2 and w3 are the weight coefficients of the smoothness index S, physical consistency score SW and motion consistency index C, respectively, and the sum of the weights is 1; compare the comprehensive quality score SQ of the focus frame with the threshold SQ0, and mark the focus frame with a comprehensive quality score SQ less than the threshold SQ0 as a problem frame.
[0113] Step S400 includes:
[0114] S401. Obtain the problem frame of the interpolation animation between two actions of the virtual character, extract the smoothness index S, physical consistency score SW, and action consistency index C corresponding to the problem frame, and compare the smoothness index S, physical consistency score SW, and action consistency index C with the corresponding smoothness index threshold S0, physical consistency score threshold SW0, and action consistency index threshold C0 respectively; if the smoothness index S is less than the smoothness index threshold S0, it means that the defect corresponding to the problem frame is that the transition speed is too fast or too slow, and the improvement suggestion is "optimize the interpolation algorithm or increase or decrease the number of interpolation frames"; if the physical consistency score SW is less than the physical consistency score threshold SW0, it means that the defect corresponding to the problem frame is a violation of physical laws, and the improvement suggestion is "adjust the physical properties of the interpolation animation"; if the action consistency index C is greater than the action consistency index threshold C0, it means that the defect corresponding to the problem frame is inconsistent behavior of the virtual character, and the improvement suggestion is "adjust the transition logic between actions and optimize the selection and sorting of action sequences";
[0115] S402. Output the problem frames and corresponding adjustment suggestions to relevant personnel, who will adjust and optimize the frame-filling animation based on the adjustment suggestions; and perform a secondary quality assessment on the adjusted frame-filling animation to obtain a comprehensive quality score SQ1 corresponding to the secondary quality assessment, and compare the comprehensive quality score SQ1 with the threshold SQ0; if the comprehensive quality score SQ1 is less than the threshold SQ0, repeat the content of S401 until the corresponding comprehensive quality score is greater than or equal to the threshold SQ0.
[0116] It should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that includes a list of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus.
[0117] Finally, it should be noted that the above descriptions are merely preferred embodiments of the present invention and are not intended to limit the present invention. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art will be able to modify the technical solutions described in the aforementioned embodiments or substitute equivalents for some of the technical features. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention shall be included within the scope of protection of the present invention.
Claims
1. A method for simulating virtual character behavior based on artificial intelligence, characterized by: The method comprises the following steps: Step S100. Acquire action data of the virtual character from the database, analyze the acquired action data of the virtual character to obtain key frame data of each action of the virtual character, and establish a key frame data set of the virtual character based on the key frame data; Step S200: Obtaining behavior instructions of the virtual character, searching the key frame data set based on the behavior instructions of the virtual character, thereby obtaining a motion sequence of the virtual character corresponding to the behavior instructions; generating a transition frame between two adjacent actions in the motion sequence based on the motion sequence of the virtual character, thereby obtaining a frame-filling animation between the two actions of the virtual character; Step S300: Obtaining motion data corresponding to the interframe animation between two actions of the virtual character, analyzing the motion data corresponding to the interframe animation, thereby identifying frames of interest in the interframe animation; performing a quality assessment on the frames of interest based on the motion data; and identifying problematic frames in the interframe animation based on the quality assessment results; The step S300 includes: S301. Obtain interpolated frame animation between two actions of the virtual character. For each transition frame p corresponding to the interpolated frame animation, obtain the corresponding motion data of the virtual character and calculate the motion change ΔMp(t) between two adjacent transition frames. The specific formula is: ΔMp(t)={Σe∈[1,E],[Mep(t+1)-Mep(t)] 2 }^(1 / 2); Where t represents the time point, Mep(t+1) represents the e-th kinematic feature of the transition frame corresponding to the time point t+1, and Mep(t) represents the e-th kinematic feature of the transition frame corresponding to the time point t; E represents the number of kinematic features; the motion changes ΔMp(t) between all adjacent transition frames are summarized, and the motion change curve Q2 is drawn with the time point as the horizontal axis and the motion change ΔMp(t) as the vertical axis. The tangent slope R corresponding to each data point on the motion change curve Q2 is calculated, and the tangent slope R corresponding to each data point is compared with the set threshold Rth. The transition frames with data points whose tangent slope R is greater than the set threshold Rth are marked as focus frames; S302. Summarize all the focus frames in the interpolation animation between two actions of the virtual character. For each focus frame, combine the motion change ΔMp(t) corresponding to each transition frame p in the interpolation animation to calculate the smoothness index S of the focus frame. The corresponding calculation formula is: Sp(t)=1 / {1+Σt∈[1,T],ΔMp(t)·β}; Where T represents the total number of time points corresponding to the interframe animation between two actions of the virtual character, which is equal to the number of transition frames corresponding to the interframe animation between two actions of the virtual character; β represents the smoothness weight, which ranges from 0 to 1; the physical consistency score SW corresponding to each frame of interest is calculated, and the specific calculation formula is: SWp(t)=1-|θp(t+1)-θp(t)| / (θ_max-θ_min); Among them, θp(t+1) represents the joint angle value of the virtual character in the transition frame corresponding to time point t+1, θp(t) represents the joint angle value of the virtual character in the transition frame corresponding to time point t; θ_max-θ_min represents the maximum angle variation range allowed for the virtual character's joints; calculate the action consistency index C corresponding to the focus frame in the interpolated frame animation between two actions of the virtual character, and the corresponding calculation formula is: Cp(t)={(1 / T)Σt∈[1,T],Σe∈[1,E], ||Mep(t)-Mp(t)||} / T; Among them, Mp(t) represents the expected motion characteristics of the transition frame corresponding to time point t; S303. Calculate the corresponding comprehensive quality score SQ based on the smoothness index S, physical consistency score SW, and motion consistency index C of the focus frame, where SQp(t) = w1·Sp(t) + w2·SWp(t) + w3·Cp(t); where w1, w2, and w3 are weight coefficients for the smoothness index S, physical consistency score SW, and motion consistency index C, respectively, and the sum of the weights is 1. Compare the comprehensive quality score SQ of the focus frame with a threshold SQ0, and mark the focus frame with a comprehensive quality score SQ less than the threshold SQ0 as a problem frame. Step S400. Analyze the problem frames in the interframe animation, generate corresponding adjustment suggestions, and output the problem frames and the corresponding adjustment suggestions to relevant personnel, who then adjust and optimize the interframe animation based on the adjustment suggestions; perform a secondary quality assessment on the adjusted and optimized interframe animation, and perform corresponding processing based on the secondary quality assessment results.
2. The method for simulating virtual character behavior based on artificial intelligence according to claim 1, characterized in that: The step S100 includes: S101. Acquire action data of a virtual character from a database, wherein the action data consists of a plurality of frames, each frame representing a posture of the virtual character at a certain moment, and each action data is represented as an action sequence P, where P={p1,p2,...,pn}, where p1 represents the posture of the virtual character in the first frame, p2 represents the posture of the virtual character in the second frame, and so on, pn represents the posture of the virtual character in the nth frame, and n represents the number of frames in the action sequence P; S102. Analyze the acquired action data of the virtual character to identify the key frames of each action of the virtual character, wherein the key frames refer to the action start frame and the action end frame of the virtual character; the key frame identification process is as follows: According to each action sequence of the virtual character, the difference Δpi between the virtual character postures corresponding to frame pi and frame pi+1 is calculated, and Δpi=||(pi+1)-pi||, where ||(pi+1)-pi|| represents the Euclidean distance between frame pi and frame pi+1; the differences Δpi are summarized, and the corresponding difference change curve Q1 is drawn, and the horizontal axis of the difference change curve Q1 is the sequential number of the differences Δpi, and the vertical axis of the difference change curve Q1 is the differences Δpi; if a certain segment of the difference change curve Q1 shows an increasing trend for the first time, compare the vertical axis Δpi of the corresponding difference change curve segment with The size relationship between the threshold ΔTstart is calculated. If Δpi is greater than the threshold ΔTstart, the frame pi+1 is marked as the action start frame p_start of the virtual character. If a segment of the difference change curve Q1 shows a decreasing trend for the first time, the size relationship between the vertical axis Δpi of the corresponding difference change curve segment and the threshold ΔTend is compared. If Δpi is less than the threshold ΔTend, the frame pi+1 is marked as the action end frame p_end of the virtual character. For each action sequence of the virtual character, the corresponding action start frame and action end frame are summarized to identify the key frame of the corresponding action sequence. S103. According to the key frame of each action of the identified virtual character, the action data of the virtual character is divided to obtain the key frame data corresponding to the action data of the virtual character, and the key frame data corresponding to each action data of the virtual character are summarized to establish a key frame data set G of the virtual character, and G={g1,g2,...,gm}, where g1 represents the key frame data of the first action of the virtual character, g2 represents the key frame data of the second action of the virtual character, and so on, gm represents the key frame data of the mth action of the virtual character, and m represents the action number of the virtual character.
3. The method for simulating virtual character behavior based on artificial intelligence according to claim 2, characterized in that: The step S200 includes: S201. Obtaining the behavior instructions of the virtual character, wherein the behavior instructions of the virtual character are composed of the action numbers of the corresponding virtual character, and the behavior instructions of the virtual character are represented by B, and B={b1,b2,...,bk}, wherein b1 represents the first action number of the virtual character, b2 represents the second action number of the virtual character, and so on, bk represents the second action number of the virtual character; k represents the total number of action numbers corresponding to the behavior instructions of the virtual character, and k≤m; searching in the key frame data set G according to the behavior instructions of the virtual character, so as to obtain the key frame data sequence corresponding to the behavior instructions of the virtual character. Column, obtain the corresponding action data in the database according to the key frame data sequence, mark the key frame position in the action data, filter the action data based on the key frame mark, retain the data from the action start frame to the action end frame for each action data, sort the filtered action data according to the behavior instructions of the virtual character, and thus obtain the motion sequence D of the virtual character corresponding to the behavior instruction, and D={d1,d2,...,dk}, where d1 represents the motion data corresponding to the behavior instruction b1, d2 represents the motion data corresponding to the behavior instruction b2, and so on, dk represents the motion data corresponding to the behavior instruction bk; S202. Perform physical simulation on the motion sequence D of the virtual character to obtain the physical properties of the virtual character at each key frame moment; for two adjacent actions bj and bj+1 in the motion sequence of the virtual character, obtain the action end frame pj_end of bj and the action start frame pj+1_start of bj+1 according to the corresponding key frame data, and generate the transition frame pt between the adjacent actions bj and bj+1 by interpolation method, and the corresponding calculation formula is: p=(1-α)·pj_end+α·pj+1_start; wherein α represents the interpolation coefficient and takes the value of [0,1]; according to the physical properties of the virtual character at each key frame moment, mark the motion data corresponding to the two adjacent actions bj and bj+1 in the motion sequence of the virtual character, mark the key frames and corresponding physical states of the adjacent actions bj and bj+1 and the generated transition frames, and use these data as training data; through the trained model, input the end frame and start frame of the two adjacent actions, the model will generate a corresponding interpolation frame sequence, and combine the interpolation frame sequence with the motion sequence D to obtain the interpolation frame animation between the two actions of the virtual character.
4. The method for simulating virtual character behavior based on artificial intelligence according to claim 1, characterized in that: The step S400 includes: S401. Obtain the problematic frame of the interpolated frame animation between two actions of the virtual character, extract the smoothness index S, physical consistency score SW, and motion consistency index C corresponding to the problematic frame, and compare the smoothness index S, physical consistency score SW, and motion consistency index C with the corresponding smoothness index threshold S0, physical consistency score threshold SW0, and motion consistency index threshold C0, respectively. If the smoothness index S is less than the smoothness index threshold S0, it indicates that the defect corresponding to the problematic frame is that the transition speed is too fast or too slow, and the improvement suggestion is to "optimize the interpolation algorithm or increase or decrease the number of interpolated frames." If the physical consistency score SW is less than the physical consistency score threshold SW0, it indicates that the defect corresponding to the problematic frame is a violation of physical laws, and the improvement suggestion is to "adjust the physical properties of the interpolated frame animation." If the motion consistency index C is greater than the motion consistency index threshold C0, it indicates that the defect corresponding to the problematic frame is inconsistent virtual character behavior, and the improvement suggestion is to "adjust the transition logic between actions and optimize the selection and order of action sequences." S402. Output the problem frames and corresponding adjustment suggestions to relevant personnel, who will adjust and optimize the frame-filling animation based on the adjustment suggestions; and perform a secondary quality assessment on the adjusted frame-filling animation to obtain a comprehensive quality score SQ1 corresponding to the secondary quality assessment, and compare the comprehensive quality score SQ1 with the threshold SQ0; if the comprehensive quality score SQ1 is less than the threshold SQ0, repeat the content of S401 until the corresponding comprehensive quality score is greater than or equal to the threshold SQ0.
5. An artificial intelligence-based virtual character behavior and action simulation system, applied to the artificial intelligence-based virtual character behavior and action simulation method according to any one of claims 1 to 4, characterized in that: The system includes: a motion data acquisition and analysis module, a behavior instruction parsing and motion sequence generation module, a frame-interpolation animation generation module, a frame-interpolation animation quality assessment and problem identification module, and a frame-interpolation animation optimization and adjustment module; The action data acquisition and analysis module acquires the action data of the virtual character from the database, analyzes the acquired action data of the virtual character, thereby obtaining key frame data of each action of the virtual character, and establishes a key frame data set of the virtual character based on the key frame data; The behavior instruction parsing and motion sequence generation module obtains the behavior instruction of the virtual character, searches in the key frame data set based on the behavior instruction of the virtual character, and thus obtains the motion sequence of the virtual character corresponding to the behavior instruction; The interpolation frame animation generation module generates a transition frame between two adjacent actions in the motion sequence according to the motion sequence of the virtual character, thereby obtaining an interpolation frame animation between the two actions of the virtual character; The interframe animation quality assessment and problem identification module obtains motion data corresponding to the interframe animation between two actions of the virtual character, analyzes the motion data corresponding to the interframe animation, and thereby identifies frames of interest in the interframe animation; performs quality assessment on the frames of interest based on the motion data; and identifies problem frames in the interframe animation based on the quality assessment results; The frame-interpolation animation quality assessment and problem identification module includes a motion variation calculation unit, a focus frame identification unit, and a problem frame marking unit; The motion variation calculation unit calculates the motion variation between each transition frame in the frame-filling animation; the focus frame identification unit identifies the focus frame according to the motion variation; the problem frame annotation unit calculates the comprehensive quality score of the focus frame, identifies and annotates the problem frame. The focus frame identification unit identifies the focus frame according to the motion variation; the problem frame annotation unit calculates the comprehensive quality score of the focus frame, identifies the problem frame according to the comprehensive quality score, and annotates the problem frame; The frame-interpolation animation optimization and adjustment module analyzes the problem frames in the frame-interpolation animation, generates corresponding adjustment suggestions, and outputs the problem frames and the corresponding adjustment suggestions to relevant personnel, who then adjust and optimize the frame-interpolation animation based on the adjustment suggestions; performs a secondary quality assessment on the adjusted and optimized frame-interpolation animation, and performs corresponding processing based on the secondary quality assessment results.
6. The artificial intelligence-based virtual character behavior simulation system according to claim 5, characterized in that: The motion data acquisition and analysis module includes a motion data acquisition unit, a motion data analysis unit and a key frame data set construction unit; The motion data acquisition unit acquires the motion data of the virtual character from the database; the motion data analysis unit analyzes the acquired motion data, calculates the differences between the motion frames, draws the difference change curve, and identifies the key frame of each action according to the threshold; the key frame data set construction unit establishes the key frame data set of the virtual character based on the key frame data.
7. The artificial intelligence-based virtual character behavior simulation system according to claim 5, characterized in that: The behavior instruction parsing and motion sequence generation module includes a behavior instruction acquisition unit and a motion sequence generation unit; The behavior instruction acquisition unit receives the behavior instruction of the virtual character; the motion sequence generation unit searches and obtains the corresponding key frame data sequence in the key frame data set according to the behavior instruction, and generates the motion sequence of the virtual character by screening and sorting; The frame-interpolation animation generation module includes a physical simulation unit, a transition frame generation unit and a frame-interpolation animation generation unit; The physical simulation unit simulates the physical properties of the virtual character at each key frame moment, thereby obtaining the physical properties of the virtual character at each key frame moment; the transition frame generation unit generates a transition frame between two actions based on the motion sequence of the virtual character and the physical simulation; The interpolation frame animation generation unit aggregates transition frames between two adjacent actions of the virtual character, thereby generating an interpolation frame animation.
8. The artificial intelligence-based virtual character behavior simulation system according to claim 5, characterized in that: The frame-filling animation optimization and adjustment module includes a problem frame analysis unit, an optimization suggestion generation unit, and a secondary quality assessment unit; The problem frame analysis unit analyzes the motion data of the problem frame and identifies the corresponding defects; the optimization suggestion generation unit generates corresponding adjustment suggestions to relevant personnel based on the analysis results of the problem frame analysis unit, and the relevant personnel make corresponding optimization adjustments; the secondary quality assessment unit performs a secondary quality assessment on the adjusted frame-filling animation and performs corresponding processing based on the secondary quality assessment results.
Citation Information
Patent Citations
Automatic frame supplementing method for light animation
CN114501133A
Transition frame prediction method, apparatus and device, and computer storage medium
CN117593427A