Virtual human motion driving method, device and storage medium based on language analysis

By obtaining evaluation indicators of virtual human action posture and voice data, and generating transitional action data, the problem of incoherence of virtual human action is solved and the smoothness and effect of the action is improved.

CN120147488BActive Publication Date: 2025-08-15GUANGZHOU HAOCHUAN NETWORK TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510621945.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-05-15
Publication Date
2025-08-15
Estimated Expiration
2045-05-15

AI Technical Summary

Technical Problem

When existing virtual people face a large number of voice commands, their movement connections are incoherent, resulting in poor smoothness of the movement, especially during special movement connections.

Method used

By obtaining the virtual person's movement posture data and the voice data at the current moment, we determine the evaluation index of the movement fluency corresponding to the voice data, and generate transitional action data based on the evaluation index to improve the fluency of the movement.

Benefits of technology

It improves the smoothness of virtual human movements, avoids the incoherence problems caused by linear frame filling, and achieves a more natural action effect.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120147488B_ABST
    Figure CN120147488B_ABST
Patent Text Reader

Abstract

The present invention discloses a virtual human motion driving method, device, and storage medium based on language analysis, belonging to the field of virtual human technology. The present invention achieves the technical effect of improving the fluency of virtual human motion by acquiring virtual human motion posture data and current voice data, the motion posture data including motion information of each joint of the virtual human; determining, based on the voice data and the motion posture data, an evaluation index for the motion smoothness of all first motion data corresponding to the voice data; and generating virtual human motion based on the first motion data and second motion data, wherein the second motion data is transitional motion data determined based on the first motion data and the evaluation index.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of virtual humans, and in particular to a method, device and storage medium for driving virtual human actions based on language analysis. Background Art

[0002] With the development of virtual human technology, the usage scenarios of virtual humans are becoming more and more extensive. In most scenarios, there are increasingly higher requirements for the interactive capabilities of virtual humans. At present, the interaction of virtual humans is mainly through voice. Virtual humans can complete some basic actions by receiving voice commands. However, the way virtual humans implement actions is often to select actions from the action database according to voice commands for execution. When faced with a large number of voice commands, problems such as discontinuous actions and freezes will occur. This is because the connection between two actions is currently based on interpolation, and the virtual human actions generated by interpolation are often linear, which leads to unstable effects in the connection process of some special actions, and thus poor action fluency.

[0003] The above content is only used to assist in understanding the technical solution of the present invention and does not constitute an admission that the above content is prior art. Summary of the Invention

[0004] The main purpose of the present invention is to provide a virtual human motion driving method, device and storage medium based on language analysis, aiming to improve the fluency of virtual human motion.

[0005] To achieve the above object, the present invention provides a method for driving a virtual human motion based on language analysis, characterized in that the method comprises the following steps:

[0006] Acquire action posture data of the virtual person and voice data at the current moment, wherein the action posture data includes: motion information of each joint of the virtual person;

[0007] Determining, based on the voice data and the motion posture data, an evaluation index of the motion fluency of all first motion data corresponding to the voice data;

[0008] A virtual human motion is generated according to the first motion data and the second motion data, wherein the second motion data is transition motion data determined according to the first motion data and an evaluation index.

[0009] Optionally, the step of determining, based on the voice data and the action posture data, an evaluation index of the action fluency of all first action data corresponding to the voice data comprises:

[0010] extracting at least two action keywords and character information from the voice data;

[0011] determining first action data according to the character information, the action keyword, and the action posture data, to obtain at least two first action data, wherein the first action data corresponds to at least one of the action keywords;

[0012] The evaluation index is calculated based on all the first motion data.

[0013] Optionally, the evaluation index includes: a first evaluation index and a second evaluation index, the first evaluation index is a first average joint position distance between two adjacent first motion data, and the second evaluation index is a second average joint position distance between the joint position of the first motion data and the joint position of the preset posture, the first motion data includes: starting position data and ending position data corresponding to the joint, and the step of calculating the evaluation index based on all the first motion data includes:

[0014] calculating, according to the order in which all first motion data are executed, a first joint distance between the end position data of the first action executed earlier and the starting position data of the second action executed later in two adjacent first actions, obtaining a plurality of first joint distances, and determining the first evaluation index based on the plurality of first joint distances;

[0015] respectively calculating second joint distances between a preset joint position of the preset posture and the starting position data and the ending position data of each of the first motion data to obtain a plurality of second joint distances, and determining the second evaluation index according to the plurality of second joint distances;

[0016] The first evaluation index and the second evaluation index are used as the evaluation index.

[0017] Optionally, the evaluation index includes: a third evaluation index, and the step of calculating the evaluation index based on all the first action data includes:

[0018] Calculating the sum of the frame numbers corresponding to all the first motion data to obtain the total frame number of the first motion;

[0019] Determining an action rate according to the total number of frames of the first action and the action time corresponding to the voice data;

[0020] The action rate is used as the third evaluation indicator.

[0021] Optionally, before the step of determining the motion rate according to the total number of frames of the first motion and the motion time corresponding to the voice data, the method further includes:

[0022] When the voice data contains an indicative word indicating the speed of executing the action, determining the action time according to the indicative word;

[0023] When the voice data does not contain an instruction word indicating the speed of executing the action, the action time is determined according to the corresponding speech speed of the voice data.

[0024] Optionally, the evaluation index includes: a first evaluation index, a second evaluation index, and a third evaluation index, wherein the first evaluation index is a first average joint position distance between two adjacent first motion data, the second evaluation index is a second average joint position distance between the joint position of the first motion data and the joint position of the preset posture, and the third evaluation index is a motion rate. Before the step of generating a virtual human motion using the first motion data and the second motion data, the step further includes:

[0025] determining a transition label of transition data according to the adjacent first action data;

[0026] Determining a frame number range of transition data according to the first evaluation index, the second evaluation index, and the third evaluation index;

[0027] The second action data is determined by matching the transition tag and the frame number range in a transition action database.

[0028] Optionally, the step of generating a virtual human action according to the first action data and the second action data includes:

[0029] generating an action sequence according to an action sequence, the first action data, and the second action data;

[0030] The virtual human action is generated according to the action sequence and rendering resources.

[0031] In addition, to achieve the above-mentioned purpose, the present invention further provides a virtual human motion driving device based on language analysis, the virtual human motion driving device based on language analysis comprising:

[0032] An acquisition module, configured to acquire the action posture data of the virtual person and the voice data at the current moment, wherein the action posture data includes: motion information of each joint of the virtual person;

[0033] An evaluation module, configured to determine, based on the voice data and the motion posture data, an evaluation index of the motion fluency of all first motion data corresponding to the voice data;

[0034] A generating module is used to generate virtual human motion according to the first motion data and second motion data, wherein the second motion data is transition motion data determined according to the first motion data and an evaluation index.

[0035] In addition, to achieve the above-mentioned purpose, the present invention also provides a virtual human motion driving device based on language analysis, and the virtual human motion driving device based on language analysis includes: a memory, a processor, and a virtual human motion driving program based on language analysis stored on the memory and runnable on the processor, and the virtual human motion driving program based on language analysis is configured to implement the steps of any of the above-mentioned virtual human motion driving methods based on language analysis.

[0036] In addition, to achieve the above-mentioned purpose, the present invention also provides a storage medium, on which a virtual human action driver based on language analysis is stored. When the virtual human action driver based on language analysis is executed by a processor, the steps of the virtual human action driving method based on language analysis described above are implemented.

[0037] The present invention proposes a virtual human motion driving method based on language analysis. The method obtains the motion posture data of the virtual human and the voice data at the current moment, and determines the evaluation index of the motion smoothness of all first motion data corresponding to the voice data based on the voice data and the motion posture data; compared with the frame filling method, it can accurately determine whether there is any non-smoothness in the motion time, rather than directly linearly filling in the needle, and can generate virtual human motion according to the first motion data and the second motion data, thereby effectively improving the smoothness of the motion and thus improving the motion effect. BRIEF DESCRIPTION OF THE DRAWINGS

[0038] Figure 1 It is a structural diagram of a virtual human motion driving device based on language analysis in a hardware operating environment involved in an embodiment of the present invention;

[0039] Figure 2 This is a flow chart of a first embodiment of a method for driving virtual human motion based on language analysis according to the present invention;

[0040] Figure 3 This is a flow chart of a second embodiment of a method for driving a virtual human action based on language analysis according to the present invention;

[0041] Figure 4 This is a flow chart of the third embodiment of the virtual human motion driving method based on language analysis of the present invention.

[0042] The purpose, features and advantages of the present invention will be further described with reference to the accompanying drawings and in conjunction with the embodiments. DETAILED DESCRIPTION

[0043] It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.

[0044] Reference Figure 1 , Figure 1 This is a schematic diagram of the structure of a virtual human motion driving device based on language analysis in the hardware operating environment involved in an embodiment of the present invention.

[0045] like Figure 1 As shown, the virtual human motion driving device based on language analysis may include: a processor 1001, such as a central processing unit (CPU), a communication bus 1002, an interactive device 1003, a network interface 1004, and a memory 1005. The communication bus 1002 is used to enable communication between these components. The interactive device 1003 may include a display and an input unit, such as a keyboard. Optionally, the interactive device 1003 may also be connected to the communication bus via a standard wired interface or a wireless interface. The network interface 1004 may optionally include a standard wired interface or a wireless interface (such as a wireless fidelity (WI-FI) interface). The memory 1005 may be a high-speed random access memory (RAM) or a stable non-volatile memory (NVM), such as a disk storage device. The memory 1005 may also be a storage device independent of the processor 1001.

[0046] Those skilled in the art will understand that Figure 1 The structure shown in the figure does not constitute a limitation on the virtual human motion driving device based on language analysis, and may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently.

[0047] like Figure 1 As shown, the memory 1005 as a storage medium may include an operating system, a data storage module, a network communication module, a user interface module, and a virtual human action driver based on language analysis.

[0048] exist Figure 1 In the device shown in FIG. 1 , the network interface 1004 is mainly used for data communication with other devices; the interactive device 1003 is mainly used for data interaction with the user; the processor 1001 and the memory 1005 in the virtual human motion driving device based on language analysis of the present invention can be set in the virtual human motion driving device based on language analysis, and the virtual human motion driving device based on language analysis calls the virtual human motion driving program based on language analysis stored in the memory 1005 through the processor 1001, and executes the virtual human motion driving method based on language analysis provided by the embodiment of the present invention.

[0049] The embodiment of the present invention provides a virtual human action driving method based on language analysis, referring to Figure 2 , Figure 2 This is a flow chart of a first embodiment of a virtual human motion driving method based on language analysis according to the present invention.

[0050] In this embodiment, the virtual human action driving method based on language analysis includes:

[0051] Step S1, obtaining the action posture data of the virtual person and the voice data at the current moment, wherein the action posture data includes: the motion information of each joint of the virtual person;

[0052] The motion posture data here can be in BVH (Biovision Hierarchy) format, which can include skeleton information and motion data. The motion posture data of the virtual human here is not limited to the data of the virtual human at the current moment, but should include the motion data that the virtual human can currently perform. It should be noted that the data in BVH format can be provided with an identifier to identify the action associated with the data, such as: the name of the action, the number of frames of the action, the skeleton identifier corresponding to the action, etc., for example: leg-raising action identifier, 15 frames, male skeleton No. 1. The type of identifier is not limited here. The voice data at the current moment is the received voice. The voice data here is generally data interacting with the virtual human, and can generally be collected through a microphone or other means.

[0053] Step S2, determining an evaluation index of the movement fluency of all first movement data corresponding to the voice data based on the voice data and the movement posture data;

[0054] Specifically, action keywords are extracted from the voice data, and the action keywords are used together with the action posture data to determine the first action data. After determining the first action data, since the first action data corresponds to the voice data, it is necessary to determine the evaluation index by analyzing all the first action data.

[0055] Step S3: Generate virtual human motion according to the first motion data and second motion data, wherein the second motion data is transition motion data determined according to the first motion data and evaluation indicators.

[0056] In this embodiment, second motion data corresponding to the first motion data is determined according to the result of the evaluation index, and the virtual human motion is generated by combining the first motion data and the second motion data.

[0057] In this embodiment, the motion posture data of the virtual person and the voice data at the current moment are obtained, and the evaluation index of the motion smoothness of all the first motion data corresponding to the voice data is determined based on the voice data and the motion posture data; compared with the frame filling method, it can accurately determine whether there is any non-smoothness in the motion time, rather than directly linearly filling in the needle, and can generate virtual human motion based on the first motion data and the second motion data, thereby effectively improving the smoothness of the motion, and then improving the motion effect.

[0058] Furthermore, based on the first embodiment, a second embodiment of the virtual human action driving method based on language analysis of the present invention is proposed. In this embodiment, referring to Figure 3 The step of determining the evaluation index of all first action data corresponding to the voice data according to the voice data and the action posture data includes:

[0059] Step S21, extracting at least two action keywords and character information from the voice data;

[0060] In this embodiment, at least two action keywords are extracted. Optionally, when there is only one action keyword in the voice data, a default action can be selected as the action keyword. The character information here can be used to filter the first action data;

[0061] Step S22, determining first action data according to the character information, the action keyword, and the action posture data, to obtain at least two first action data, wherein the first action data corresponds to at least one of the action keywords;

[0062] The first action data is determined in the action posture data based on the character information and the keyword, specifically by matching the keyword and the character information with an identifier corresponding to the action posture data, and determining the first action data based on the matching result. Of course, in some embodiments, it is necessary to convert the action keyword into a vocabulary of identifiers corresponding to the action posture data, and optionally, convert one action keyword into keywords for multiple actions.

[0063] Step S23: Calculate the evaluation index based on all the first motion data.

[0064] In this embodiment, the number of evaluation indicators here can be one or more, and is used to evaluate the smoothness of the actions corresponding to all the first action data.

[0065] In this embodiment, by extracting at least two action keywords and character information from the voice data; determining the first action data based on the character information, the action keywords and the action posture data, at least two first action data are obtained, and the evaluation index is calculated based on all the first action data, the accuracy of the obtained first action data can be improved, and thus the accuracy of the evaluation index can be improved.

[0066] Furthermore, based on the first embodiment or the second embodiment, a third embodiment of the virtual human action driving method based on language analysis of the present invention is proposed, referring to Figure 4 The evaluation index includes: a first evaluation index and a second evaluation index, the first evaluation index is a first average joint position distance between two adjacent first motion data, and the second evaluation index is a second average joint position distance between the joint position of the first motion data and the joint position of the preset posture, the first motion data includes: starting position data and ending position data corresponding to the joint, and the step of calculating the evaluation index based on all the first motion data includes:

[0067] Step S231, calculating the first joint distance between the end position data of the first action executed earlier and the starting position data of the second action executed later in two adjacent first actions according to the execution order of all the first action data, obtaining a plurality of the first joint distances, and determining the first evaluation index based on the plurality of the first joint distances;

[0068] It should be noted that the ending position data herein refers specifically to the position data of each joint in the last frame of the first motion data, and the starting position data herein refers specifically to the position data of each joint in the first frame of the first motion data. For two adjacent first motion data, the positions of the same joints in the above data can reflect the smoothness of the motion process, with a larger first joint distance reflecting a lower smoothness. It should be noted that the first joint distance herein refers to the distance between the same joint in different first motion data, rather than calculating the joint distance using different joints. For example, the joint distance between the knee and the ankle cannot be calculated. Determining the first evaluation index based on multiple first joint distances can be by calculating the average first joint distance as the first evaluation index. Of course, for two first motion data with a joint motion amount below a threshold, the largest first joint distance among the multiple first joint distances can also be selected as the first evaluation index. For example, if the first motion is solely an arm rotation, selecting the largest first joint distance as the first evaluation index can improve the accuracy of the first evaluation index. This avoids the influence of joints that are both stationary in two adjacent first motion data.

[0069] Step S232, respectively calculating the second joint distances between the preset joint position of the preset posture and the starting position data and the ending position data of each of the first motion data, obtaining a plurality of second joint distances, and determining the second evaluation index based on the plurality of second joint distances;

[0070] Preferably, the preset posture here can be a standing posture, and the preset joint positions are the positions of the joints in the standing posture. Determining the second evaluation indicator based on multiple second joint distances can be calculating an average second joint distance as the second evaluation indicator. The scenario corresponding to the preset posture here is often that after completing the previous first action data, the preset posture is first achieved before executing the next first action data.

[0071] Step S233: Use the first evaluation index and the second evaluation index as the evaluation index.

[0072] The first evaluation index and the second evaluation index are used together as the evaluation index. In other embodiments, only the first evaluation index or the second evaluation index may be used as the evaluation index.

[0073] In this embodiment, the first joint distance between the end position data of the first action and the starting position data of the later action in two adjacent first actions is calculated in the order of execution of all the first action data to obtain a plurality of the first joint distances, and the first evaluation index is determined based on the plurality of first joint distances; and the second joint distance between the preset joint position of the preset posture and the starting position data and the ending position data of each of the first action data is calculated respectively to obtain a plurality of the second joint distances, and the second evaluation index is determined based on the plurality of the second joint distances, thereby accurately reflecting the smoothness of the virtual person in the process of completing at least two actions.

[0074] Furthermore, based on any of the above embodiments, a fourth embodiment of the virtual human motion driving method based on language analysis of the present invention is proposed, wherein the evaluation index includes: a third evaluation index, and the step of calculating the evaluation index based on all the first motion data includes:

[0075] Calculating the sum of the frame numbers corresponding to all the first motion data to obtain the total frame number of the first motion;

[0076] The total number of all frames of the first motion data saved in the BVH format is directly calculated. In other formats, other methods can also be used to determine the total number of frames.

[0077] Determining an action rate according to the total number of frames of the first action and the action time corresponding to the voice data;

[0078] The action time here can be determined based on the keyword of the voice data, and the action rate can be calculated based on the action time and the total number of frames of the first action, which can be calculated by dividing the total number of frames of the first action by the action time.

[0079] The action rate is used as the third evaluation indicator.

[0080] In this embodiment, the total number of frames of the first action is obtained by calculating the sum of the number of frames corresponding to all the first action data, and the action rate is determined according to the total number of frames of the first action and the action time corresponding to the voice data, so that the evaluation index can be accurately determined.

[0081] Furthermore, before the step of determining the motion rate according to the total number of frames of the first motion and the motion time corresponding to the voice data, the method further includes:

[0082] When the voice data contains an indicative word indicating the speed of executing the action, determining the action time according to the indicative word;

[0083] Optionally, each first action data is provided with an identifier of a default action time, which is used to determine the default time required for the action. When words such as "fast" and "high speed" appear, the action time can be modified by multiplying the coefficient corresponding to the words such as "high speed" and "fast" by the default action time. When the voice data contains indicative words that are limited to be executed within a period of time, the time range corresponding to the indicative words is used as the action time. In this embodiment, two different ways of determining the action time are implemented for different types of indicative words, so that the action time can be determined more accurately, avoiding the problem of the action time being too long or too short.

[0084] When the voice data does not contain an instruction word indicating the speed of executing the action, the action time is determined according to the corresponding speech speed of the voice data.

[0085] Specifically, the number of words per unit time in the voice data is calculated as speech rate data, and the action time is determined according to the speech rate data and a preset conversion coefficient.

[0086] Furthermore, based on any of the above embodiments, a fifth embodiment of the virtual human motion driving method based on language analysis of the present invention is proposed, wherein the evaluation indicators include: a first evaluation indicator, a second evaluation indicator, and a third evaluation indicator, wherein the first evaluation indicator is a first average joint position distance between two adjacent first motion data, the second evaluation indicator is a second average joint position distance between the joint position of the first motion data and the joint position of the preset posture, and the third evaluation indicator is a motion rate. Before the step of generating a virtual human motion according to the first motion data and the second motion data, the method further includes:

[0087] determining a transition label of transition data according to the adjacent first action data;

[0088] Determining a frame number range of transition data according to the first evaluation index, the second evaluation index, and the third evaluation index;

[0089] The second action data is determined by matching the transition tag and the frame number range in a transition action database.

[0090] In this embodiment, it should be noted that the transition label is used to filter out the required second motion data. For example, if two adjacent first motion data are walking and running, the changes in the joint positions will be relatively abrupt when switching directly from walking to running. The transition motion can maintain the continuity and naturalness of the motion. Therefore, a corresponding transition label is required to filter out the required second motion data. Optionally, the frame range of the transition data is determined based on the weight coefficients corresponding to the first evaluation index, the second evaluation index, and the third evaluation index, respectively, and the total number of frames of the first motion; and the second motion data is matched and determined in the transition motion database based on the transition label and the frame range.

[0091] Furthermore, the step of generating a virtual human action according to the first action data and the second action data includes:

[0092] generating an action sequence according to an action sequence, the first action data, and the second action data;

[0093] The virtual human action is generated according to the action sequence and rendering resources.

[0094] Specifically, the rendering resource adaptation unit may dynamically adjust parameters according to the rendering characteristics of the target platform, and update the data in real time when it is detected that the user manually adjusts the transition parameters.

[0095] In this embodiment, the transition label of the transition data is determined by the adjacent first action data, the frame range of the transition data is determined according to the first evaluation index, the second evaluation index and the third evaluation index, and the second action data is matched and determined in the transition action database according to the transition label and the frame range, thereby improving the smoothness of the generated virtual human action.

[0096] In addition, an embodiment of the present invention further provides a virtual human motion driving device based on language analysis, characterized in that the virtual human motion driving device based on language analysis includes:

[0097] An acquisition module, configured to acquire the action posture data of the virtual person and the voice data at the current moment, wherein the action posture data includes: motion information of each joint of the virtual person;

[0098] An evaluation module, configured to determine, based on the voice data and the motion posture data, an evaluation index of the motion fluency of all first motion data corresponding to the voice data;

[0099] A generating module is used to generate virtual human motion according to the first motion data and second motion data, wherein the second motion data is transition motion data determined according to the first motion data and an evaluation index.

[0100] The virtual human motion driving device based on language analysis can implement the steps of any of the above embodiments.

[0101] In addition, an embodiment of the present invention also proposes a virtual human motion driving device based on language analysis, which includes: a memory, a processor, and a virtual human motion driving program based on language analysis stored on the memory and runnable on the processor, and the virtual human motion driving program based on language analysis is configured as any one of the steps of the virtual human motion driving method based on language analysis described above.

[0102] In addition, an embodiment of the present invention also proposes a storage medium, on which a virtual human action driver based on language analysis is stored. When the virtual human action driver based on language analysis is executed by a processor, the steps of any of the above-mentioned virtual human action driving methods based on language analysis are implemented.

[0103] It should be noted that, in this document, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or system comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or system. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not preclude the presence of other identical elements in the process, method, article, or system comprising the element.

[0104] The serial numbers of the above embodiments of the present invention are for description only and do not represent the advantages or disadvantages of the embodiments.

[0105] Through the description of the above embodiments, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus the necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better embodiment. Based on this understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) as described above, and includes a number of instructions for enabling a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in each embodiment of the present invention.

[0106] The above are only preferred embodiments of the present invention and are not intended to limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made using the contents of the present invention description and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present invention.

Claims

1. A virtual human action driving method based on language analysis, characterized in that: The virtual human action driving method based on language analysis comprises the following steps: Acquire action posture data of the virtual person and voice data at the current moment, wherein the action posture data includes: motion information of each joint of the virtual person; Determining, based on the voice data and the motion posture data, an evaluation index of the motion fluency of all first motion data corresponding to the voice data; generating a virtual human motion according to the first motion data and the second motion data, wherein the second motion data is transition motion data determined according to the first motion data and the evaluation index; The step of determining the evaluation index of the movement fluency of all the first movement data corresponding to the voice data according to the voice data and the movement posture data comprises: extracting at least two action keywords and character information from the voice data; determining first action data according to the character information, the action keyword, and the action posture data, to obtain at least two first action data, wherein the first action data corresponds to at least one of the action keywords; Calculating the evaluation index based on all the first action data; The evaluation index includes: a first evaluation index and a second evaluation index, the first evaluation index is a first average joint position distance between two adjacent first motion data, and the second evaluation index is a second average joint position distance between the joint position of the first motion data and the joint position of the preset posture, the first motion data includes: starting position data and ending position data corresponding to the joint, and the step of calculating the evaluation index based on all the first motion data includes: calculating, according to the order in which all first motion data are executed, a first joint distance between the end position data of the first action executed earlier and the starting position data of the second action executed later in two adjacent first actions, obtaining a plurality of first joint distances, and determining the first evaluation index based on the plurality of first joint distances; respectively calculating second joint distances between a preset joint position of the preset posture and the starting position data and the ending position data of each of the first motion data to obtain a plurality of second joint distances, and determining the second evaluation index according to the plurality of second joint distances; The first evaluation index and the second evaluation index are used as the evaluation index.

2. The virtual human motion driving method based on language analysis according to claim 1, characterized in that: The evaluation indicators include: a first evaluation indicator, a second evaluation indicator, and a third evaluation indicator, wherein the first evaluation indicator is a first average joint position distance between two adjacent first motion data, the second evaluation indicator is a second average joint position distance between the joint position of the first motion data and the joint position of the preset posture, and the third evaluation indicator is a motion rate. Before the step of generating a virtual human motion according to the first motion data and the second motion data, the method further includes: determining a transition label of transition data according to the adjacent first action data; Determining a frame number range of transition data according to the first evaluation index, the second evaluation index, and the third evaluation index; The second action data is determined by matching the transition tag and the frame number range in a transition action database.

3. The method for driving virtual human motion based on language analysis according to claim 2, characterized in that: The step of generating a virtual human action according to the first action data and the second action data comprises: generating an action sequence according to an action sequence, the first action data, and the second action data; The virtual human action is generated according to the action sequence and rendering resources.

4. A virtual human motion driving device based on language analysis, characterized in that: The virtual human motion driving device based on language analysis includes: An acquisition module, configured to acquire the action posture data of the virtual person and the voice data at the current moment, wherein the action posture data includes: motion information of each joint of the virtual person; An evaluation module, configured to determine, based on the voice data and the motion posture data, an evaluation index of the motion fluency of all first motion data corresponding to the voice data; The step of determining the evaluation index of the movement fluency of all the first movement data corresponding to the voice data according to the voice data and the movement posture data comprises: extracting at least two action keywords and character information from the voice data; determining first action data according to the character information, the action keyword, and the action posture data, to obtain at least two first action data, wherein the first action data corresponds to at least one of the action keywords; Calculating the evaluation index based on all the first action data; The evaluation index includes: a first evaluation index and a second evaluation index, the first evaluation index is a first average joint position distance between two adjacent first motion data, and the second evaluation index is a second average joint position distance between the joint position of the first motion data and the joint position of the preset posture, the first motion data includes: starting position data and ending position data corresponding to the joint, and the step of calculating the evaluation index based on all the first motion data includes: calculating, according to the order in which all first motion data are executed, a first joint distance between the end position data of the first action executed earlier and the starting position data of the second action executed later in two adjacent first actions, obtaining a plurality of first joint distances, and determining the first evaluation index based on the plurality of first joint distances; respectively calculating second joint distances between a preset joint position of the preset posture and the starting position data and the ending position data of each of the first motion data to obtain a plurality of second joint distances, and determining the second evaluation index according to the plurality of second joint distances; Using the first evaluation index and the second evaluation index as the evaluation index; A generating module is used to generate virtual human motion according to the first motion data and second motion data, wherein the second motion data is transition motion data determined according to the first motion data and an evaluation index.

5. A virtual human motion driving device based on language analysis, characterized in that: The language analysis-based virtual human motion driving device includes: a memory, a processor, and a language analysis-based virtual human motion driving program stored in the memory and executable on the processor. The language analysis-based virtual human motion driving program is configured to implement the steps of the language analysis-based virtual human motion driving method as described in any one of claims 1 to 3.

6. A storage medium, characterized in that The storage medium stores a virtual human motion driver based on language analysis, which, when executed by a processor, implements the steps of the virtual human motion driving method based on language analysis according to any one of claims 1 to 3.

Citation Information

Patent Citations

  • Method and system for driving virtual character to act by real-time voice

    CN111939558A

  • 3D virtual digital human interaction action generation method and system based on deep learning

    CN115797606A