Three-dimensional model animation video generation method, device, electronic device and storage medium

By creating keyframes and editing transformation curves to adjust the parameters of the three-dimensional model and camera, the problem of difficult to achieve fine adjustments and special motion effects in the prior art is solved, and the generation efficiency and effect of animation videos are improved.

CN119478148BActive Publication Date: 2025-04-11HANGZHOU QUNHE INFORMATION TECHNOLOGIES CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510045001.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-01-10
Publication Date
2025-04-11
Estimated Expiration
2045-01-10

AI Technical Summary

Technical Problem

It is difficult for the prior art to achieve fine adjustment of three-dimensional model parameters and rapid production of special motion effects, especially in web page three-dimensional animation video editing.

Method used

Create keyframes in response to model parameters and camera parameters, output model transformation curves and camera transformation curves according to the interpolation type, edit these curves to determine the motion trajectory and velocity of the model and camera, and finally generate animated video based on these states.

Benefits of technology

It realizes fine adjustments to the three-dimensional model and camera parameters, improves the generation efficiency and effect of animation videos, and can quickly realize complex animations and special motion effects.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119478148B_ABST
    Figure CN119478148B_ABST
Patent Text Reader

Abstract

The present disclosure provides a method, device, electronic device and storage medium for generating a three-dimensional model animation video, which relates to the field of computer technology, in particular to the fields of computer graphics and animation production, and can be used in application scenarios such as design planning and product display. The specific scheme is: in response to the received parameters of the model and camera, a key frame is created; in response to the received interpolation type, the transformation curve of the model and camera is output according to the properties of the model and camera; in response to the editing operation of the transformation curve, the motion trajectory of the model and camera is determined according to the parameters of the transformation curve, and the motion speed of the model and camera is determined according to the slope of the transformation curve; in response to the detected video playback instruction, the spatial state of the model and camera is calculated according to the motion trajectory and motion speed, and the animation video is generated based on the spatial state. This scheme can improve the generation efficiency and video effect of three-dimensional model animation videos.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, in particular to the fields of computer graphics and animation production, and can be used in application scenarios such as design planning and product display, and specifically to a method, device, electronic device and storage medium for generating three-dimensional model animation videos. Background Art

[0002] In the related art, web page three-dimensional (3D) animation video editing for three-dimensional models is mainly performed through key frame operations, which makes it difficult to achieve fine adjustment of model parameters and rapid production of special motion effects. Summary of the invention

[0003] The present invention provides a method, device, electronic device and storage medium for generating a three-dimensional model animation video.

[0004] According to one aspect of the present disclosure, a method for generating a three-dimensional model animation video is provided, comprising: creating a key frame in response to received model parameters and camera parameters; the model parameters include at least one model attribute; the camera parameters include at least one camera attribute; in response to the received interpolation type, outputting a model transformation curve and a camera transformation curve according to the model attributes and the camera attributes; the endpoints of the model transformation curve and the camera transformation curve are key frames; in response to an editing operation on the model transformation curve or the camera transformation curve, determining a model motion trajectory and a camera motion trajectory according to the parameters of the model transformation curve and the camera transformation curve, and determining a model motion speed and a camera motion speed according to the slopes of the model transformation curve and the camera transformation curve; in response to a detected video playback instruction, calculating a model space state and a camera space state according to the model motion trajectory, the camera motion trajectory, the model motion speed and the camera motion speed, and generating an animation video based on the model space state and the camera space state.

[0005] According to another aspect of the present disclosure, a three-dimensional model animation video generation device is provided, including: a key frame creation module, used to create key frames in response to received model parameters and camera parameters; the model parameters include at least one model attribute; the camera parameters include at least one camera attribute; a curve generation module, used to output a model transformation curve and a camera transformation curve in response to a received interpolation type according to the model attributes and the camera attributes; the endpoints of the model transformation curve and the camera transformation curve are key frames; a curve update module, used to determine a model motion trajectory and a camera motion trajectory according to the parameters of the model transformation curve and the camera transformation curve in response to an editing operation on the model transformation curve or the camera transformation curve, and determine the model motion speed and the camera motion speed according to the slopes of the model transformation curve and the camera transformation curve; a video generation module, used to calculate a model space state and a camera space state according to the model motion trajectory, the camera motion trajectory, the model motion speed and the camera motion speed in response to a detected video playback instruction, and generate an animation video based on the model space state and the camera space state.

[0006] According to another aspect of the present disclosure, an electronic device is provided, comprising: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute any method in the embodiments of the present disclosure.

[0007] According to another aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable the computer to execute any method according to the embodiments of the present disclosure.

[0008] According to another aspect of the present disclosure, a computer program product is provided, including a computer program, which implements any method according to the embodiments of the present disclosure when executed by a processor.

[0009] By adopting the solution disclosed in the present invention, it is possible to adjust the specific parameters of the model and the camera, thereby improving the generation efficiency and video effect of the three-dimensional model animation video.

[0010] It should be understood that the content described in this section is not intended to identify the key or important features of the embodiments of the present disclosure, nor is it intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0011] The accompanying drawings are used to better understand the present solution and do not constitute a limitation of the present disclosure.

[0012] Figure 1is a flow chart of a method for generating a 3D model animation video according to an embodiment of the present disclosure;

[0013] Figure 2 is a schematic diagram of a transformation curve based on linear interpolation according to an embodiment of the present disclosure;

[0014] Figure 3 is a schematic diagram of a transformation curve combining linear interpolation and mutation interpolation according to an embodiment of the present disclosure;

[0015] Figure 4 is a schematic diagram of curve control points according to an embodiment of the present disclosure;

[0016] Figure 5 is a schematic diagram of a transformation curve smoothing method according to an embodiment of the present disclosure;

[0017] Figure 6 is a schematic diagram of editing a transformation curve according to an embodiment of the present disclosure;

[0018] Figure 7 is a flow chart of a method for generating a three-dimensional model animation video according to an embodiment of the present disclosure;

[0019] Figure 8 is a schematic diagram of a model transformation curve according to an embodiment of the present disclosure;

[0020] Fig. 9 is a schematic diagram of an interface for adjusting a camera according to an embodiment of the present disclosure;

[0021] Fig.10 is a structural schematic diagram of a three-dimensional model animation video generating device according to an embodiment of the present disclosure;

[0022] Fig.11 It is a schematic diagram of a scene generated by a three-dimensional model animation video according to an embodiment of the present disclosure. DETAILED DESCRIPTION

[0023] The following is a description of exemplary embodiments of the present disclosure in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding, which should be considered as merely exemplary. Therefore, it should be recognized by those of ordinary skill in the art that various changes and modifications may be made to the embodiments described herein without departing from the scope of the present disclosure. Similarly, for the sake of clarity and conciseness, the description of well-known functions and structures is omitted in the following description.

[0024] The term "and / or" in this article is only a description of the association relationship of associated objects, indicating that there may be three relationships. For example, a and / or b can mean: a exists alone, a and b exist at the same time, and b exists alone. The term "at least one" in this article means any combination of at least two of any one or more of a plurality of types. For example, at least one of a, b, and c can mean any one or more elements selected from the set consisting of a, b, and c. The terms "first" and "second" in this article refer to multiple similar technical terms and distinguish them. They do not mean to limit the order or to limit them to only two. For example, the first feature and the second feature refer to two types / two features. The first feature can be one or more, and the second feature can also be one or more.

[0025] In addition, in order to better illustrate the present disclosure, numerous specific details are given in the following specific embodiments. It should be understood by those skilled in the art that the present disclosure can also be implemented without certain specific details.

[0026] Before introducing the technical solutions of the embodiments of the present disclosure, the technical terms that may be used in the present disclosure are further explained:

[0027] 3D model animation video: A video created through computer graphics technology, which involves the construction, animation and rendering of 3D models. Generally, creating a 3D model animation video first requires 3D modeling of the model, which can be achieved using professional 3D modeling software. Subsequently, materials and textures are added to the model to simulate surface properties in the real world, where textures are 2D images that are used to cover the surface of the 3D model to increase detail and realism. Next, light sources are set in the 3D scene to simulate the effects of natural or artificial light, where lighting affects the brightness, color and atmosphere of the scene, while shadows add a sense of depth and realism. Then, actions are added to the model so that it can move, deform or change in other ways. Then, the 3D scene rendering is converted into a 2D image or video, and the color of each pixel can be calculated by the rendering engine, taking into account all factors such as lighting, shadows, reflections, etc., to generate the final image or video frame. Finally, the rendered image or video is edited, color-corrected, and special effects and sound effects are added in the video editing software. In particular, in 3D animation production, the model and the camera are interdependent. The model provides the content of the scene, while the camera determines how to capture and display this content.

[0028] Model: A geometric representation of an object or character created in three-dimensional space. It includes information such as the shape, structure and size of the object, and is the basis for animation and rendering. Models can be created in many ways, including manual modeling, scanning real objects, or using parametric methods. During the modeling process, it is necessary to define the vertices, edges and faces of the object, as well as possible subdivision and smoothing.

[0029] Camera: In 3D animation, a camera is a virtual device used to capture and record scenes. It determines the viewing angle and field of view of the final animation video, similar to a real-life camera. The camera can move in 3D space, including translation, rotation, and zoom, and the motion path and speed can be precisely controlled to create different visual effects and narrative rhythms. The position and parameters of the camera directly affect the quality and style of the final rendered image. During the rendering process, the scene "seen" by the camera is converted into a 2D image or video frame.

[0030] The present disclosure provides a method for generating a three-dimensional model animation video. Figure 1 It is a flow chart of a method for generating a 3D model animation video according to an embodiment of the present disclosure. The method for generating a 3D model animation video can be applied to a 3D model animation video generating device. The 3D model animation video generating device is located in an electronic device. The electronic device includes but is not limited to fixed devices and / or mobile devices. For example, fixed devices include but are not limited to servers, and the server can be a cloud server or an ordinary server. For example, mobile devices include but are not limited to: mobile phones, tablet computers. In some possible implementations, the method for generating a 3D model animation video can also be implemented by a processor calling computer-readable instructions stored in a memory. For example Figure 1 As shown, the 3D model animation video generation method includes:

[0031] S101, creating a key frame in response to received model parameters and camera parameters; the model parameters include at least one model attribute; the camera parameters include at least one camera attribute;

[0032] S102, in response to the received interpolation type, outputting a model transformation curve and a camera transformation curve according to the model attributes and the camera attributes; the endpoints of the model transformation curve and the camera transformation curve are key frames;

[0033] S103, in response to the editing operation on the model transformation curve or the camera transformation curve, determining the model motion trajectory and the camera motion trajectory according to the parameters of the model transformation curve and the camera transformation curve, and determining the model motion speed and the camera motion speed according to the slopes of the model transformation curve and the camera transformation curve;

[0034] S104. In response to the detected video play instruction, a model space state and a camera space state are calculated according to the model motion trajectory, the camera motion trajectory, the model motion speed and the camera motion speed, and an animation video is generated based on the model space state and the camera space state.

[0035] In the disclosed embodiment, the model parameter is a set of multiple model attributes corresponding to any moment, including the moment and multiple model attributes corresponding to the moment, which can represent the state of the model at the corresponding moment. Specifically, the number of model attributes can be preset according to demand. Exemplarily, the model attributes may include: X-axis coordinates, Y-axis coordinates, Z-axis coordinates, X-axis Euler angles, Y-axis Euler angles, Z-axis Euler angles, scaling, red color channel, green color channel, and blue color channel, etc. In particular, for any model attribute, there is a default value. When the value of a certain model attribute is not received, the default value is used as the value of the model attribute by default. The above is only an exemplary description and is not intended to limit all possible situations of the model attributes, but it is not exhaustive here.

[0036] In one embodiment, the model parameters may be: at a first moment, the X-axis coordinate of the model is 5, the Y-axis coordinate of the model is 4, the Z-axis coordinate of the model is 8, the X-axis Euler angle of the model is 0, the Y-axis Euler angle of the model is 0, the Z-axis Euler angle of the model is 0, the scaling ratio of the model is 6, the red channel of the model is 255, the green channel of the model is 255, and the blue channel of the model is 255; at a second moment, the X-axis coordinate of the model is 8, the Y-axis coordinate of the model is 2, the Z-axis coordinate of the model is 8, the X-axis Euler angle of the model is 0, the Y-axis Euler angle of the model is 0, the Z-axis Euler angle of the model is 0, the scaling ratio of the model is 6, the red channel of the model is 255, the green channel of the model is 255, and the blue channel of the model is 255. The angle is 45, the Y-axis Euler angle of the model is 0, the Z-axis Euler angle of the model is 15, the scale of the model is 5, the red channel of the model is 255, the green channel is 255, and the blue channel is 255; at the third moment, the X-axis coordinate of the model is 5, the Y-axis coordinate of the model is 0, the Z-axis coordinate of the model is 8, the X-axis Euler angle of the model is 90, the Y-axis Euler angle of the model is 0, the Z-axis Euler angle of the model is 60, the scale of the model is 1, the red channel of the model is 0, the green channel is 0, and the blue channel is 0. The above is only an exemplary description, and is not intended to limit all possible situations of the model parameters, but it is not exhaustive here.

[0037] In the disclosed embodiment, the camera parameter is a set of multiple camera attributes corresponding to any moment, which can represent the state of the camera at the corresponding moment. Specifically, the number of camera attributes can be preset according to requirements. Exemplarily, the camera attributes may include: X-axis coordinates, Y-axis coordinates, Z-axis coordinates, X-axis Euler angles, Y-axis Euler angles, Z-axis Euler angles, focal length, and field of view, etc. The above is only an exemplary description and is not intended to limit all possible situations of camera attributes, but it is not exhaustive here. In particular, for any model attribute, there is a default value. When the value of a model attribute is not received, the default value is used as the value of the model attribute by default. The above is only an exemplary description and is not intended to limit all possible situations of model attributes, but it is not exhaustive here.

[0038] In one embodiment, the camera parameters may be: at a first moment, the X-axis coordinate of the camera is 5, the Y-axis coordinate of the camera is 4, the Z-axis coordinate of the camera is 20, the X-axis Euler angle of the camera is 0, the Y-axis Euler angle of the camera is 0, the Z-axis Euler angle of the camera is 90, the focal length of the camera is 35, and the field of view of the camera is 120; at a second moment, the X-axis coordinate of the camera is 5, the Y-axis coordinate of the camera is 4, the Z-axis coordinate of the camera is 20, the X-axis Euler angle of the camera is 0, the Y-axis Euler angle of the camera is 0, the Z-axis Euler angle of the camera is 90, the focal length of the camera is 35, and the field of view of the camera is 90; at a third moment, the X-axis coordinate of the camera is 0, the Y-axis coordinate of the camera is 0, the Z-axis coordinate of the camera is 8, the X-axis Euler angle of the camera is 0, the Y-axis Euler angle of the camera is 0, the Z-axis Euler angle of the camera is 0, the focal length of the camera is 15, and the field of view of the camera is 90. The above is only an exemplary description and is not intended to limit all possible situations of camera parameters, but it is not intended to be exhaustive here.

[0039] In the disclosed embodiment, a key frame refers to a frame that records the state of the model and the state of the camera at a specific moment. By setting key frames at different time points, the path and behavior of the model and the camera over time can be defined.

[0040] In the disclosed embodiment, the process of creating a keyframe can be: at a specific moment, the model parameters and camera parameters corresponding to the moment are input into the 3D animation software. In the 3D animation software, there is usually a button or command to create a keyframe. Click the Create Keyframe button, and the software will record the value of each model attribute and camera attribute in the model parameters and camera parameters as a keyframe at the current moment. Exemplarily, it can also be achieved by changing the attribute values ​​of the model and the camera and letting the software automatically create keyframes, or by using a specific keyframe insertion tool and other methods in the prior art. The above is only an exemplary description and is not intended to limit all possible situations for creating keyframes, but it is not exhaustive here.

[0041] In the disclosed embodiments, interpolation is a technique used in computer graphics to generate intermediate frames between two key frames, and different interpolation types will produce different animation effects. For example, interpolation types may include linear interpolation, mutation interpolation, and Bezier curve interpolation. The above is only an exemplary description and is not intended to limit all possible situations of interpolation types, but it is not exhaustive here.

[0042] In the disclosed embodiment, a model transformation curve refers to a transformation curve of any model attribute with respect to time, wherein the horizontal axis of the transformation curve is time and the vertical axis is any model attribute. In particular, the endpoints of the model transformation curve are key frames, which define the exact state of the model at a specific time point.

[0043] In the disclosed embodiments, a camera transformation curve refers to a transformation curve of any camera attribute with respect to time, wherein the horizontal axis of the transformation curve is time and the vertical axis is any camera attribute. In particular, the endpoints of the camera transformation curve are key frames, which define the exact state of the camera at a specific point in time.

[0044] In the disclosed embodiment, in response to the received interpolation type, the process of outputting the model transformation curve and the camera transformation curve according to the model attributes and the camera attributes can first determine the number of model transformation curves and camera transformation curves according to the model attributes and the camera attributes, respectively, then set the key frames as the endpoints of each model transformation curve and the camera transformation curve, and finally connect the key frames according to the interpolation type. Exemplarily, if linear interpolation is used, a straight line is created to connect the two key frames, and the value of the middle point is calculated on this line; if mutation interpolation is used, the attribute value of the previous key frame is copied until the time point of the next key frame is reached; if Bezier curve interpolation is used, a smooth curve is created based on the key frames and additional control points. The above is only an exemplary description and is not intended to limit all possible situations for outputting model transformation curves and camera transformation curves, but it is not exhaustive here.

[0045] Figure 2 A schematic diagram of a transformation curve based on linear interpolation in an embodiment of the present disclosure is shown. Figure 2 As shown, there are 6 key frames in total, including the initial point and the square point in the figure, and linear interpolation is used to connect two adjacent key frames.

[0046] Figure 3 FIG. 4 shows a schematic diagram of a transformation curve combining linear interpolation and mutation interpolation in an embodiment of the present disclosure. Figure 3As shown, there are 6 key frames in total, including the initial point and the square point in the figure. The initial point and the first key frame are connected by linear interpolation, the first key frame and the second key frame are connected by mutation interpolation, and the second to fifth key frames are all connected by linear interpolation.

[0047] In the disclosed embodiment, the editing operation of the model transformation curve or the camera transformation curve may differ according to the interpolation type. Specifically, if linear interpolation is used, the editing operation of the model transformation curve or the camera transformation curve may be to add one or more key frames to the straight line between the two key frames, thereby causing the straight line between the two key frames to bend, and realizing a slope change between the two key frames; if mutation interpolation is used, the editing operation of the model transformation curve or the camera transformation curve may be to add one or more key frames to the straight line between the two key frames, thereby causing multiple mutations between the two key frames, and realizing a progressive change between the two key frames; if Bezier curve interpolation is used, the editing operation of the model transformation curve or the camera transformation curve may be to adjust the additional control points and handles of the Bezier curve, and the overall shape and path of the curve may be changed by moving the control points and / or handles. The above is only an exemplary description, and is not intended to limit all possible situations of the editing operation of the model transformation curve or the camera transformation curve, but it is not exhaustive here.

[0048] In the disclosed embodiment, the model motion trajectory refers to the path that the 3D model passes through during the animation process. In particular, the model motion trajectory is affected by all model attributes in the model parameters, that is, it needs to be determined in combination with all model transformation curves.

[0049] In the disclosed embodiment, the camera motion trajectory refers to the path that the camera passes through during the animation process. In particular, the camera motion trajectory will be affected by all camera properties in the camera parameters, that is, it needs to be determined in combination with all camera transformation curves.

[0050] In the disclosed embodiment, since the model transformation curve and the camera transformation curve are curves with the horizontal coordinate being time, the vertical coordinate being any attribute, and the endpoints being key frames, the slopes of the model transformation curve and the camera transformation curve represent the changing trend of the curve at that point. For example, a positive slope means that the attribute value of any attribute of the model or the camera is increasing with the increase of time; a negative slope means that the attribute value of any attribute of the model or the camera is decreasing with the increase of time. In particular, the larger the absolute value of the slope, the faster the change; a slope close to zero indicates a slow change or a nearly constant change. For example, a larger slope may represent a rapid movement or a sharp rotation, while a smaller slope may represent a slow movement or a smooth transition. By calculating the slopes of the model transformation curve and the camera transformation curve, the model motion speed and the camera motion speed can be determined.

[0051] In the disclosed embodiments, the model space state refers to the position, rotation, and scaling of the model in three-dimensional space at a specific time point. These states can be calculated based on the motion trajectory and speed of the model. The camera space state refers to the position, rotation, and viewing angle of the camera in three-dimensional space at a specific time point. These states can be calculated based on the motion trajectory and speed of the camera. By determining the model space state and the camera space state, the relative position of the model and the camera viewing angle at any moment and the relative displacement of the model and the camera viewing angle in any time period can be determined, thereby obtaining the state of the model at each moment within the camera viewing angle, and generating an animated video.

[0052] In the disclosed embodiment, first, based on the received model parameters and camera parameters, at a specific moment in the model parameters and camera parameters, the values ​​of the model attributes and camera attributes corresponding to the moment can be recorded as key frames. Further, after the number of model transformation curves and camera transformation curves are determined respectively according to the model attributes and camera attributes, the key frames are connected according to the interpolation type. Furthermore, based on the edited model transformation curves and camera transformation curves, the values ​​of all model attributes and all camera attributes are extracted for each moment, and then the model motion trajectory and camera motion trajectory are obtained, and then the model motion speed and camera motion speed are determined by calculating the slopes of the model transformation curves and camera transformation curves. Finally, the model space state and camera space state are calculated by the model motion trajectory, camera motion trajectory, model motion speed and camera motion speed, and then the sequence frames are calculated, and the animation video is generated by back-end rendering.

[0053] The technical solution of the disclosed embodiment can decompose the parameters of the model and the camera to the lowest dimension through detailed parameter settings, and realize fine adjustment for each specific parameter of the model and / or the camera, quickly realize the video effect of special motion, and improve the generation effect of the animation video. At the same time, the visual operation can be realized by editing the transformation curve, and complex animations can be quickly generated, which improves the generation efficiency of the animation video. In addition, the editing operation of the transformation curve can also directly adjust the shape of the transformation curve, and various speed change effects can be achieved by changing the slope, creating dynamic effects such as acceleration and deceleration, making the animation more vivid. Moreover, by adapting a variety of different interpolation methods, different model motion effects can be achieved.

[0054] In some embodiments, a key frame is created in response to received model parameters and camera parameters, including: determining the model state parameters at any moment based on the model parameters; determining the camera state parameters at any moment based on the camera parameters; creating a key frame at the corresponding moment based on the model state parameters and the camera state parameters; when there is only one key frame, creating a key frame at the initial moment based on the initial state of the model and the initial state of the camera.

[0055] In the disclosed embodiment, the model state parameter is a set of multiple model attributes corresponding to a single moment. According to the model parameters, the process of determining the model state parameter at any moment can first extract the moment from the model parameters, and then extract all model attributes corresponding to the moment. The extracted model attribute set is the model state parameter.

[0056] In one embodiment, for the first moment, the model state parameters are: the X-axis coordinate of the model is 5, the Y-axis coordinate of the model is 4, the Z-axis coordinate of the model is 8, the X-axis Euler angle of the model is 0, the Y-axis Euler angle of the model is 0, the Z-axis Euler angle of the model is 0, the scaling ratio of the model is 6, the red channel of the model is 255, the green channel of the model is 255, and the blue channel of the model is 255.

[0057] Similarly, for the second moment, the model state parameters are: the X-axis coordinate of the model is 8, the Y-axis coordinate of the model is 2, the Z-axis coordinate of the model is 8, the X-axis Euler angle of the model is 45, the Y-axis Euler angle of the model is 0, the Z-axis Euler angle of the model is 15, the scaling ratio of the model is 5, the red channel of the model is 255, the green channel is 255, and the blue channel is 255.

[0058] Similarly, for the third moment, the model state parameters are: the X-axis coordinate of the model is 5, the Y-axis coordinate of the model is 0, the Z-axis coordinate of the model is 8, the X-axis Euler angle of the model is 90, the Y-axis Euler angle of the model is 0, the Z-axis Euler angle of the model is 60, the scaling ratio of the model is 1, the red channel of the model is 0, the green channel is 0, and the blue channel is 0.

[0059] The above is only an illustrative description and is not intended to be a limitation on all possible scenarios of the model parameters, but it is not intended to be exhaustive.

[0060] In the disclosed embodiment, the camera state parameter is a set of multiple camera properties corresponding to a single moment. According to the camera parameters, the process of determining the camera state parameter at any moment can first extract the moment from the camera parameters, and then extract all camera properties corresponding to the moment. The extracted camera property set is the camera state parameter.

[0061] In one embodiment, for the first moment, the camera state parameters are: the camera's X-axis coordinate is 5, the camera's Y-axis coordinate is 4, the camera's Z-axis coordinate is 20, the camera's X-axis Euler angle is 0, the camera's Y-axis Euler angle is 0, the camera's Z-axis Euler angle is 90, the camera's focal length is 35, and the camera's field of view is 120.

[0062] Similarly, for the second moment, the camera state parameters are: the camera's X-axis coordinate is 5, the camera's Y-axis coordinate is 4, the camera's Z-axis coordinate is 20, the camera's X-axis Euler angle is 0, the camera's Y-axis Euler angle is 0, the camera's Z-axis Euler angle is 90, the camera's focal length is 35, and the camera's field of view is 90.

[0063] Similarly, for the third moment, the camera state parameters are: the camera's X-axis coordinate is 0, the camera's Y-axis coordinate is 0, the camera's Z-axis coordinate is 8, the camera's X-axis Euler angle is 0, the camera's Y-axis Euler angle is 0, the camera's Z-axis Euler angle is 0, the camera's focal length is 15, and the camera's field of view is 90.

[0064] The above is only an exemplary description and is not intended to limit all possible situations of the camera state parameters, but it is not intended to be exhaustive here.

[0065] In the disclosed embodiment, in the process of creating key frames at corresponding moments according to the model state parameters and the camera state parameters, the values ​​of the model state parameters and the camera state parameters at the same moment may be recorded as key frames.

[0066] In one embodiment, at the first moment, the X-axis coordinate of the model is 5, the Y-axis coordinate of the model is 4, the Z-axis coordinate of the model is 8, the X-axis Euler angle of the model is 0, the Y-axis Euler angle of the model is 0, the Z-axis Euler angle of the model is 0, the scaling ratio of the model is 6, the red channel of the model is 255, the green channel of the model is 255, the blue channel of the model is 255, the X-axis coordinate of the camera is 5, the Y-axis coordinate of the camera is 4, the Z-axis coordinate of the camera is 20, the X-axis Euler angle of the camera is 0, the Y-axis Euler angle of the camera is 0, the Z-axis Euler angle of the camera is 90, the focal length of the camera is 35, and the field of view of the camera is 120 are recorded, thereby creating a key frame at the first moment.

[0067] Similarly, at the second moment, the model's X-axis coordinate is 8, the model's Y-axis coordinate is 2, the model's Z-axis coordinate is 8, the model's X-axis Euler angle is 45, the model's Y-axis Euler angle is 0, the model's Z-axis Euler angle is 15, the model's scaling ratio is 5, the model's red channel is 255, the green channel is 255, the blue channel is 255, the camera's X-axis coordinate is 5, the camera's Y-axis coordinate is 4, the camera's Z-axis coordinate is 20, the camera's X-axis Euler angle is 0, the camera's Y-axis Euler angle is 0, the camera's Z-axis Euler angle is 90, the camera's focal length is 35, and the camera's field of view is 90 are recorded, thereby creating a keyframe at the second moment.

[0068] Similarly, at the third moment, the model's X-axis coordinate is 5, the model's Y-axis coordinate is 0, the model's Z-axis coordinate is 8, the model's X-axis Euler angle is 90, the model's Y-axis Euler angle is 0, the model's Z-axis Euler angle is 60, the model's scaling ratio is 1, the model's red channel is 0, the green channel is 0, the blue channel is 0, the camera's X-axis coordinate is 0, the camera's Y-axis coordinate is 0, the camera's Z-axis coordinate is 8, the camera's X-axis Euler angle is 0, the camera's Y-axis Euler angle is 0, the camera's Z-axis Euler angle is 0, the camera's focal length is 15, and the camera's field of view is 90 are recorded, thereby creating a keyframe at the third moment.

[0069] The above is only an exemplary description and is not intended to limit all possible situations for creating key frames, but it is not intended to be exhaustive.

[0070] In the disclosed embodiment, when there is only one key frame, the process of creating a key frame at the initial moment according to the initial state of the model and the initial state of the camera means that when the received model parameters and camera parameters only have the model state parameters and camera state parameters at one moment, at 00:00:00, all model properties and all camera properties in the model state parameters and the camera state parameters are set to default values, and then all model properties and all camera properties are recorded, thereby creating a key frame at 00:00:00.

[0071] In this way, through detailed parameter settings, the parameters of the model and camera can be split into the lowest dimension, and each specific parameter of the model and / or camera can be finely adjusted to quickly achieve special motion video effects, thereby improving the generation effect of animation videos. At the same time, using key frames, the state of the model and camera at a specific time point can be accurately defined, simplifying the animation video production process and improving the efficiency of animation video production.

[0072] In some embodiments, in response to a received interpolation type, a model transformation curve and a camera transformation curve are output according to the model attributes and the camera attributes, including: according to the model attributes, a smoothing algorithm is called to output a model transformation curve corresponding to the interpolation type; the number of model transformation curves is consistent with the number of model attributes; according to the camera attributes, a smoothing algorithm is called to output a camera transformation curve corresponding to the interpolation type; the number of camera transformation curves is consistent with the number of camera attributes.

[0073] In the disclosed embodiment, the smoothing algorithm may include: Savitzky-Gola filter algorithm, spline interpolation algorithm, cubic convolution interpolation algorithm, Bezier curve interpolation algorithm, etc. In practical application, the choice of smoothing algorithm may depend on the interpolation type. The above is only an exemplary description and is not intended to limit all possible situations of the smoothing algorithm, but it is not exhaustive here.

[0074] In the disclosed embodiment, the process of calling a smoothing algorithm and outputting a model transformation curve corresponding to an interpolation type according to a model attribute refers to applying a smoothing algorithm to estimate the value of an intermediate frame between known key frames for any model attribute, thereby calculating the attribute values ​​of multiple intermediate frames between two key frames, thereby making the model attribute smoothly transition between the two key frames, and realizing a continuous transition of the model attribute in time. In particular, the number of model transformation curves is consistent with the number of model attributes.

[0075] In one embodiment, based on the model parameters in the embodiments of the present disclosure, it can be known that when the model parameters include ten model attributes of X-axis coordinate, Y-axis coordinate, Z-axis coordinate, X-axis Euler angle, Y-axis Euler angle, Z-axis Euler angle, scaling ratio, red color channel, green color channel and blue color channel, ten model transformation curves including X-axis coordinate model transformation curve, Y-axis coordinate model transformation curve, Z-axis coordinate model transformation curve, X-axis Euler angle model transformation curve, Y-axis Euler angle model transformation curve, Z-axis Euler angle model transformation curve, scaling ratio model transformation curve, red color channel model transformation curve, green color channel model transformation curve and blue color channel model transformation curve will be generated accordingly.

[0076] Among them, the corresponding X-axis coordinate of the model's X-axis coordinate transformation curve at the first moment is 5, the corresponding X-axis coordinate at the second moment is 8, and the corresponding X-axis coordinate at the third moment is 5, that is, the X-axis coordinate transformation curve of the model as a whole is a curve that first increases with time and then decreases back to the initial height with time.

[0077] Among them, the Y-axis coordinate transformation curve of the model has a corresponding Y-axis coordinate of 4 at the first moment, a corresponding Y-axis coordinate of 2 at the second moment, and a corresponding Y-axis coordinate of 0 at the third moment, that is, the Y-axis coordinate transformation curve of the model is a curve that decreases with time as a whole.

[0078] Among them, the corresponding Z-axis coordinate of the model's Z-axis coordinate transformation curve at the first moment is 8, the corresponding Z-axis coordinate at the second moment is 8, and the corresponding Z-axis coordinate at the third moment is 8, that is, the Z-axis coordinate transformation curve of the model as a whole is a curve whose horizontal height remains unchanged over time.

[0079] Among them, the X-axis Euler angle transformation curve of the model has a corresponding X-axis Euler angle of 0 at the first moment, a corresponding X-axis Euler angle of 45 at the second moment, and a corresponding X-axis Euler angle of 90 at the third moment, that is, the X-axis Euler angle transformation curve of the model is a curve that rises with time as a whole.

[0080] Among them, the Y-axis Euler angle transformation curve of the model has a corresponding Y-axis Euler angle of 0 at the first moment, a corresponding Y-axis Euler angle of 0 at the second moment, and a corresponding Y-axis Euler angle of 0 at the third moment, that is, the Y-axis Euler angle transformation curve of the model as a whole is a curve whose horizontal height does not change with time.

[0081] Among them, the Z-axis Euler angle transformation curve of the model has a corresponding Z-axis Euler angle of 0 at the first moment, a corresponding Z-axis Euler angle of 15 at the second moment, and a corresponding Z-axis Euler angle of 60 at the third moment, that is, the Z-axis Euler angle transformation curve of the model is a curve that rises with time as a whole.

[0082] Among them, the corresponding scaling ratio of the scaling ratio transformation curve of the model at the first moment is 6, the corresponding scaling ratio at the second moment is 5, and the corresponding scaling ratio at the third moment is 1, that is, the scaling ratio transformation curve of the model as a whole is a curve that decreases with time.

[0083] Among them, the red channel transformation curve of the model has a corresponding red channel of 255 at the first moment, a corresponding red channel of 255 at the second moment, and a corresponding red channel of 0 at the third moment, that is, the red channel transformation curve of the model as a whole is a curve that is first horizontal and then decreases over time.

[0084] Among them, the green channel transformation curve of the model has a corresponding red channel of 255 at the first moment, a corresponding red channel of 255 at the second moment, and a corresponding red channel of 0 at the third moment, that is, the green channel transformation curve of the model as a whole is a curve that is first horizontal and then decreases over time.

[0085] Among them, the blue channel transformation curve of the model has a corresponding red channel of 255 at the first moment, a corresponding red channel of 255 at the second moment, and a corresponding red channel of 0 at the third moment, that is, the blue channel transformation curve of the model as a whole is a curve that is first horizontal and then decreases over time.

[0086] The above is only an exemplary description and is not intended to limit all possible cases of the model transformation curve, but it is not intended to be exhaustive here.

[0087] In the disclosed embodiment, the process of calling a smoothing algorithm and outputting a camera transformation curve corresponding to an interpolation type according to camera properties refers to applying a smoothing algorithm to estimate the value of an intermediate frame between known key frames for any camera property, thereby calculating the property values ​​of multiple intermediate frames between two key frames, thereby making the camera property smoothly transition between the two key frames, and realizing the process of continuous transition of the camera property in time. In particular, the number of camera transformation curves is consistent with the number of camera properties.

[0088] In one embodiment, based on the camera parameters in the embodiments of the present disclosure, it can be known that when the camera parameters include eight camera properties including X-axis coordinate, Y-axis coordinate, Z-axis coordinate, X-axis Euler angle, Y-axis Euler angle, Z-axis Euler angle, focal length and field of view angle, eight camera transformation curves including X-axis coordinate camera transformation curve, Y-axis coordinate camera transformation curve, Z-axis coordinate camera transformation curve, X-axis Euler angle camera transformation curve, Y-axis Euler angle camera transformation curve, Z-axis Euler angle camera transformation curve, focal length camera transformation curve and field of view angle camera transformation curve will be generated accordingly.

[0089] Among them, the corresponding X-axis coordinate of the camera's X-axis coordinate transformation curve at the first moment is 5, the corresponding X-axis coordinate at the second moment is 5, and the corresponding X-axis coordinate at the third moment is 0, that is, the camera's X-axis coordinate transformation curve as a whole is a curve that first becomes horizontal with time and then decreases with time.

[0090] Among them, the corresponding Y-axis coordinate of the camera's Y-axis coordinate transformation curve at the first moment is 4, the corresponding Y-axis coordinate at the second moment is 4, and the corresponding Y-axis coordinate at the third moment is 0, that is, the camera's Y-axis coordinate transformation curve as a whole is a curve that first becomes horizontal with time and then decreases with time.

[0091] Among them, the corresponding Z-axis coordinate of the camera's Z-axis coordinate transformation curve at the first moment is 4, the corresponding Z-axis coordinate at the second moment is 4, and the corresponding Z-axis coordinate at the third moment is 0, that is, the camera's Z-axis coordinate transformation curve as a whole is a curve that first becomes horizontal with time and then decreases with time.

[0092] Among them, the camera's X-axis Euler angle transformation curve has a corresponding X-axis Euler angle of 0 at the first moment, a corresponding X-axis Euler angle of 0 at the second moment, and a corresponding X-axis Euler angle of 0 at the third moment, that is, the camera's X-axis Euler angle transformation curve is a curve whose horizontal height remains unchanged over time as a whole.

[0093] Among them, the camera's Y-axis Euler angle transformation curve has a corresponding Y-axis Euler angle of 0 at the first moment, a corresponding Y-axis Euler angle of 0 at the second moment, and a corresponding Y-axis Euler angle of 0 at the third moment, that is, the camera's Y-axis Euler angle transformation curve is a curve whose horizontal height remains unchanged over time as a whole.

[0094] Among them, the camera's Z-axis Euler angle transformation curve has a corresponding Z-axis Euler angle of 90 at the first moment, a corresponding Z-axis Euler angle of 90 at the second moment, and a corresponding Z-axis Euler angle of 0 at the third moment, that is, the camera's Z-axis Euler angle transformation curve is a curve that is first horizontal with time and then decreases with time.

[0095] Among them, the focal length change curve of the camera at the first moment corresponds to a focal length of 35, the corresponding focal length at the second moment is 35, and the corresponding focal length at the third moment is 15, that is, the focal length change curve of the camera as a whole is a curve that is first horizontal with time and then decreases with time.

[0096] Among them, the corresponding field of view angle of the camera's field of view angle transformation curve at the first moment is 120, the corresponding field of view angle at the second moment is 90, and the corresponding field of view angle at the third moment is 90, that is, the camera's field of view angle transformation curve as a whole is a curve that first decreases with time and then becomes horizontal with time.

[0097] In one embodiment, when the interpolation type selects Bezier curve interpolation and the smoothing algorithm selects Bezier curve interpolation algorithm, a third-order Bezier curve can be selected so that the Bezier curves between multiple key frames are continuous at the vertices and spliced ​​into a smooth curve, thereby achieving a smooth transition between key frames.

[0098] Figure 4 A schematic diagram of curve control points in an embodiment of the present disclosure is shown in FIG. Figure 4 As shown, each Bezier curve is determined by four control points, including the first control point , second control point , the third control point and the fourth control point .

[0099] Figure 5 FIG. 4 shows a schematic diagram of a smoothing method for transforming a curve according to an embodiment of the present disclosure. Figure 5 As shown, based on the key frame setting method in the embodiment of the present disclosure, three key frame points A, B, and C are set for the first moment, the second moment, and the third moment respectively, and points A and B form a Bezier curve, and B and C form a Bezier curve.

[0100] Exemplarily, point A and point B are used as the first control point and the fourth control point of curve AB, and point B and point C are used as the first control point and the fourth control point of curve BC. At this time, the second control point and the third control point of curve AB and curve BC need to be confirmed respectively.

[0101] In order to ensure that the two Bezier curves AB and BC are smoothly connected, we must first ensure that the curves are continuous at the connection point B, that is, the tangent line of the curve AB at the connection point B is consistent with the tangent line of the curve BC at the connection point B, which is equivalent to the left derivative of the function being equal to the right derivative. In particular, the necessary condition for maintaining continuity is that the connection point B and the control points before and after it are on the same straight line, and the straight line is the tangent line of the curve at this point.

[0102] Specifically, if we need to draw a smooth curve passing through points A, B, and C, we need to calculate the control points of the Bezier curve used for connection. Taking the connection point B as an example, calculating the control points includes:

[0103] S301, take the midpoints E and F of line segment AB and line segment BC, and connect E and F to obtain line segment EF;

[0104] S302, select point D on line segment EF so that the ratio of the length of line segment FD to line segment DE is equal to the ratio of the length of line segment CB to line segment AB, that is, FD / DE=BC / AB;

[0105] S303, translating line segment EF according to vector DB so that points D and B coincide after translation;

[0106] S304 , taking points E′ and F′ in the translated line segment as the second control point and the third control point of the Bezier curve.

[0107] S305, when there is When there are connection points, the above algorithm is applied to each connection point separately to calculate control points, that is, each connection point corresponds to two control points.

[0108] In one embodiment, because multiple values ​​of any model attribute cannot correspond to any one time in the real world, it is necessary to ensure that the ordinate of the Bezier curve is unique at the same time. Specifically, the control points of the Bezier curve can be constrained. Exemplarily, the abscissa of the second control point of the Bezier curve can be controlled to never be less than or equal to the abscissa of the first control point, and the abscissa of the third control point can never be greater than or equal to the abscissa of the fourth control point.

[0109] In this way, through interpolation calculation, the workload of manually creating and adjusting animation transformation curves is reduced, and the efficiency of animation production is improved. At the same time, by generating transformation curves for each model attribute and camera attribute separately, the parameters of the model and camera can be split into the lowest dimension, and each specific parameter of the model and / or camera can be finely adjusted to quickly achieve special motion video effects, thereby improving the generation effect of animation videos.

[0110] In some embodiments, in response to an editing operation on a model transformation curve or a camera transformation curve, a model motion trajectory and a camera motion trajectory are determined according to parameters of the model transformation curve and the camera transformation curve, and a model motion speed and a camera motion speed are determined according to the slopes of the model transformation curve and the camera transformation curve, including: determining a target transformation curve and a target key frame according to a position of the editing operation; when the target transformation curve is a model transformation curve, calling a smoothing algorithm according to the amplitude of the editing operation, adjusting the model transformation curve in an interval corresponding to the target key frame according to a preset smoothing rule, outputting an updated model transformation curve, and using the updated model transformation curve as the model transformation curve; when the target transformation curve is a camera transformation curve, calling a smoothing algorithm according to the amplitude of the editing operation, adjusting the camera transformation curve in an interval corresponding to the target key frame according to a preset smoothing rule, outputting an updated camera transformation curve, and using the updated camera transformation curve as the camera transformation curve; determining a model motion trajectory and a camera motion trajectory according to parameters of the model transformation curve and the camera transformation curve, and determining a model motion speed and a camera motion speed according to the slopes of the model transformation curve and the camera transformation curve.

[0111] In the disclosed embodiment, the editing operation of the model transformation curve or the camera transformation curve is performed by the user, so determining the target transformation curve and the target key frame according to the location of the editing operation is to determine which key frame in which transformation curve the user is editing according to the user operation.

[0112] In one embodiment, when the model transformation curve or the camera transformation curve is a Bezier curve, the editing operation on the model transformation curve or the camera transformation curve may be to adjust the control points and / or handles of the curve where the keyframe is located. By dragging the control points, the path of the curve may be directly changed, which may be used to adjust the start and end positions of the animation. By adjusting the handle length, the smoothness and speed change of the curve may be changed, which may be used to create acceleration or deceleration effects.

[0113] In the disclosed embodiment, when the target transformation curve is a model transformation curve, according to the amplitude of the editing operation, the smoothing algorithm is called, and the model transformation curve is adjusted in the interval corresponding to the target key frame according to the preset smoothing rules, and the updated model transformation curve is output. In the process of using the updated model transformation curve as the model transformation curve, when the model transformation curve is a Bezier curve, the smoothing algorithm can be called according to the example of moving the control point or adjusting the amplitude of the handle length to adjust the model transformation curve with the preset smoothing rules to ensure the smoothness and continuity of the model transformation curve. In particular, the smoothing algorithm called at this time is consistent with the smoothing algorithm called when generating the model transformation curve. Further, the smoothing algorithm only works within a specific key frame interval, which can ensure that the adjustment of the model transformation curve will only affect the key frames being edited and the curve parts of the adjacent intervals, thereby ensuring that the transition of the model transformation curve between key frames is smooth and there is no abrupt change. The above is only an exemplary description, and is not intended to limit all possible situations for updating the model transformation curve, but it is not exhaustive here.

[0114] In the disclosed embodiment, when the target transformation curve is a camera transformation curve, according to the amplitude of the editing operation, a smoothing algorithm is called, and the camera transformation curve is adjusted in the interval corresponding to the target key frame according to the preset smoothing rule, and the updated camera transformation curve is output. In the process of using the updated camera transformation curve as the camera transformation curve, when the camera transformation curve is a Bezier curve, the smoothing algorithm can be called to adjust the camera transformation curve with the preset smoothing rule according to the example of moving the control point or adjusting the amplitude of the handle length, so as to ensure the smoothness and continuity of the camera transformation curve. In particular, the smoothing algorithm called at this time is consistent with the smoothing algorithm called when generating the camera transformation curve. Further, the smoothing algorithm only works within a specific key frame interval, which can ensure that the adjustment of the camera transformation curve will only affect the key frames being edited and the curve parts of the adjacent intervals, thereby ensuring that the transition of the camera transformation curve between key frames is smooth and there is no abrupt change. The above is only an exemplary description, and is not intended to limit all possible situations for updating the camera transformation curve, but it is not exhaustive here.

[0115] In the disclosed embodiment, the process of determining the model motion trajectory and the camera motion trajectory according to the parameters of the model transformation curve and the camera transformation curve, and determining the model motion speed and the camera motion speed according to the slopes of the model transformation curve and the camera transformation curve can firstly obtain the model attribute corresponding to the model transformation curve at any time based on any updated model transformation curve after the editing operation, and then traverse all updated model transformation curves to obtain all model attributes at each time; then, the model motion trajectory can be determined from all model attributes at each time. Similarly, the camera attribute corresponding to the camera transformation curve at any time can be obtained based on any updated camera transformation curve after the editing operation, and then traverse all updated camera transformation curves to obtain all camera attributes at each time; then, the camera motion trajectory can be determined from all camera attributes at each time. Furthermore, based on any updated model transformation curve after the editing operation, the slope of the curve at any moment is obtained. Since the horizontal coordinate of the model transformation curve is time and the vertical coordinate is the model attribute, the slope of the curve at any moment is the change speed of the model attribute at that moment; then, all updated model transformation curves are traversed to obtain the change speed of all model attributes at each moment, and the model motion speed can be determined. Similarly, based on any updated camera transformation curve after the editing operation, the slope of the curve at any moment is obtained. Since the horizontal coordinate of the camera transformation curve is time and the vertical coordinate is the camera attribute, the slope of the curve at any moment is the change speed of the camera attribute at that moment; then, all updated camera transformation curves are traversed to obtain the change speed of all camera attributes at each moment, and the camera motion speed can be determined. In particular, the slope of the curve at any moment can be obtained by taking the derivative.

[0116] Figure 6 A schematic diagram of editing a transformation curve in an embodiment of the present disclosure is shown, in which the curve is a target transformation curve, the black square is a target key frame, the two black triangles near the target key frame are control points, and the line between the control point and the target key frame is a handle. By dragging the control point, the control point and the handle can be adjusted to edit the transformation curve.

[0117] In this way, by directly editing the transformation curve, it is possible to make fine visual adjustments to the split low-dimensional parameters, which not only lowers the technical threshold, but also improves the efficiency of generating animation videos. In addition, the editing operation of the transformation curve can also directly adjust the shape of the transformation curve, and then achieve various speed-changing effects through slope changes, creating dynamic effects such as acceleration and deceleration, making the animation more vivid.

[0118] In some embodiments, the model motion trajectory and the camera motion trajectory are determined according to the parameters of the model transformation curve and the camera transformation curve, and the model motion speed and the camera motion speed are determined according to the slopes of the model transformation curve and the camera transformation curve, including: calculating the model state at any moment according to the parameters of the model transformation curve; traversing all moments according to the model state to generate the model motion trajectory; calculating the camera state at any moment according to the parameters of the camera transformation curve; traversing all moments according to the camera state to generate the camera motion trajectory; calculating the model speed at any moment according to the slope of the model transformation curve; calculating the camera speed at any moment according to the slope of the camera transformation curve.

[0119] In the embodiment of the present disclosure, the process of calculating the model state at any moment according to the parameters of the model transformation curve first needs to determine the model state parameters at that moment, that is, the values ​​of all model attributes, based on all model transformation curves, and finally integrate the model state parameters to obtain the model state.

[0120] In one embodiment, based on the model parameters and key frame settings in the embodiment of the present disclosure, the state of the model at the first moment is calculated, that is, the X-axis coordinate, Y-axis coordinate, Z-axis coordinate, X-axis Euler angle model transformation curve, Y-axis Euler angle model transformation curve, Z-axis Euler angle model transformation curve, scaling ratio model transformation curve, red color channel model transformation curve, green color channel model transformation curve and blue color channel model transformation curve are extracted.

[0121] Furthermore, according to the model state parameters at the first moment, it can be integrated to obtain that at the first moment, the model state is: the coordinates are (5, 4, 8), the model does not rotate, the external dimensions are enlarged 6 times compared to the reference, and the appearance is white.

[0122] The above is only an exemplary description and is not intended to limit all possible situations of the calculation model state, but it is not intended to be exhaustive here.

[0123] In the disclosed embodiment, the process of traversing all moments and generating the model motion trajectory according to the model state is to repeat the steps of calculating the model state at any moment according to the parameters of the model transformation curve until the model state at each moment is obtained. Furthermore, through the model state of each frame, kinematic and trajectory planning methods such as six-degree-of-freedom manipulator kinematic analysis can be used to plan the motion trajectory of the model. The above is only an exemplary description and is not intended to limit all possible situations for generating the model motion trajectory, but it is not exhaustive here.

[0124] In one embodiment, based on the model parameters and key frame settings in the embodiment of the present disclosure, according to the model state parameters extracted at the second moment, it can be integrated to obtain that at the second moment, the state of the model is: the coordinates are (8, 2, 8), the model is rotated 45° along the X-axis and 15° along the Z-axis compared to the benchmark, the external dimensions are enlarged 5 times compared to the benchmark, and it appears white.

[0125] Similarly, according to the model state parameters extracted at the third moment, it can be integrated to obtain the state of the model at the third moment: the coordinates are (5, 0, 8), the model is rotated 90° along the X-axis and 60° along the Z-axis compared to the reference, the external dimensions are consistent with the reference, and it appears black in appearance.

[0126] In particular, for any intermediate frame estimated by calculation in any model transformation curve, a formula corresponding to the interpolation method may be used for calculation to obtain parameters of the intermediate frame.

[0127] In the disclosed embodiment, to calculate the camera state at any moment according to the parameters of the camera transformation curve, it is first necessary to determine the camera state parameters at that moment, that is, the values ​​of all camera attributes, based on all camera transformation curves, and finally integrate the camera state parameters to obtain the camera state.

[0128] In one implementation, based on the camera parameters and key frame settings in the embodiments of the present disclosure, the state of the camera at the first moment is calculated, that is, the X-axis coordinate, Y-axis coordinate, Z-axis coordinate, X-axis Euler angle, Y-axis Euler angle, Z-axis Euler angle, focal length and field of view angle of the camera at the first moment are extracted from the X-axis coordinate camera transformation curve, the Y-axis coordinate camera transformation curve, the Z-axis coordinate camera transformation curve, the X-axis Euler angle camera transformation curve, the Y-axis Euler angle camera transformation curve, the Z-axis Euler angle camera transformation curve, the focal length camera transformation curve and the field of view angle camera transformation curve.

[0129] Furthermore, according to the camera state parameters at the first moment, it can be integrated to obtain that at the first moment, the camera state is: the coordinates are (5, 4, 20), the camera is rotated 90° along the Z axis compared to the reference, the focal length is 35 mm, and the field of view is 120°.

[0130] The above is only an exemplary description and is not intended to limit all possible situations for calculating the camera status, but it is not intended to be exhaustive here.

[0131] In the disclosed embodiment, according to the camera state, all moments are traversed to generate the camera motion trajectory process, that is, the step of calculating the camera state at any moment according to the parameters of the camera transformation curve is repeated until the camera state at each moment is obtained. Furthermore, through the camera state of each frame, kinematic and trajectory planning methods such as six-degree-of-freedom manipulator kinematic analysis can be used to plan the camera motion trajectory. The above is only an exemplary description and is not intended to limit all possible situations for generating the camera motion trajectory, but it is not exhaustive here.

[0132] In one implementation, based on the camera parameters and key frame settings in the embodiment of the present disclosure, according to the camera state parameters extracted at the second moment, it can be integrated to obtain the state of the camera at the second moment: the coordinates are (5, 4, 20), the camera is rotated 90° along the Z axis compared to the reference, the focal length is 35 mm, and the field of view angle is 90°.

[0133] Similarly, according to the camera state parameters extracted at the third moment, it can be integrated to obtain that the state of the camera at the third moment is: the coordinates are (0, 0, 8), the camera does not rotate compared to the reference, the focal length is 15 mm, and the field of view angle is 90°.

[0134] In particular, for any intermediate frame estimated by calculation in any model transformation curve, a formula corresponding to the interpolation method may be used for calculation to obtain parameters of the intermediate frame.

[0135] In the disclosed embodiment, the process of calculating the model speed at any time according to the slope of the model transformation curve can first calculate the change speed of the model attribute at that time by taking the derivative for any model transformation curve; then calculate the change speed of each model attribute at that time for each model transformation curve; finally, take the change speed of each model attribute as a component, and then integrate it into a speed vector of a model, and take the vector as the model speed. The above is only an exemplary description and is not intended to limit all possible situations for calculating the model speed, but it is not exhaustive here.

[0136] In the disclosed embodiment, the process of calculating the camera speed at any moment according to the slope of the camera transformation curve can first calculate the change speed of the camera attribute at that moment by taking the derivative for any camera transformation curve; then calculate the change speed of each camera attribute at that moment for each camera transformation curve; finally, take the change speed of each camera attribute as a component, and then integrate it into a camera speed vector, and use the vector as the camera speed. The above is only an exemplary description and is not intended to limit all possible situations for calculating the camera speed, but it is not exhaustive here.

[0137] In this way, by analyzing the transformation curve in detail, the movement of the model and camera in three-dimensional space can be accurately controlled, and the movement trajectory and speed can be accurately calculated, which can simulate more realistic dynamic effects and improve the generation effect of animation videos. At the same time, through detailed analysis of the movement trajectory and speed, more accurate decisions can be made based on the data, further improving the generation effect of animation videos. In addition, by calculating the speed of the model and camera through the slope, the visual effect can be predicted before actual rendering, improving the generation efficiency of animation videos.

[0138] In some embodiments, in response to a detected video playback instruction, a model space state and a camera space state are calculated according to the model motion trajectory, the camera motion trajectory, the model motion speed and the camera motion speed, and an animation video is generated based on the model space state and the camera space state, including: updating the model according to the model motion trajectory and the model motion speed to determine the model space state at any moment; updating the camera according to the camera motion trajectory and the camera motion speed to determine the camera space state at any moment; and traversing all moments according to the model space state and the camera space state to generate an animation video.

[0139] In the disclosed embodiment, the process of updating the model according to the model motion trajectory and the model motion speed to determine the model space state at any moment can first define a model state vector according to the model motion trajectory and the model motion speed at that moment, and the model state vector includes information such as the model state and model speed at that moment, and the model is updated based on the model state vector; then, the solution of the state equation can be approximated using methods such as Euler integral or Runge-Kutta, so as to determine the model space state at that moment; finally, the above process is repeated for each moment to determine the model space state at any moment. The above is only an exemplary description and is not intended to limit all possible situations for determining the model space state, but it is not exhaustive here.

[0140] In the disclosed embodiment, the process of updating the camera according to the camera motion trajectory and the camera motion speed to determine the camera spatial state at any moment can first define a camera state vector according to the camera motion trajectory and the camera motion speed at that moment, and the camera state vector includes information such as the camera state and camera speed at that moment, and the camera is updated based on the camera state vector; then, the Euler integral or Runge-Kutta method can be used to approximate the solution of the state equation to determine the camera spatial state at that moment; finally, the above process is repeated for each moment to determine the camera spatial state at any moment. The above is only an exemplary description and is not intended to limit all possible situations for determining the camera spatial state, but it is not exhaustive here.

[0141] In the disclosed embodiment, according to the model space state and the camera space state, all moments are traversed to generate the process of animation video. Based on the model space state and the camera space state, the relative relationship between the model and the camera at each moment can be determined, and then the relative state of the model within the camera perspective at that moment can be determined. In particular, the movement of the model determines the position and state of the model in the picture, and the motion trajectory of the camera provides perspective tracking for the model. If the camera trajectory remains unchanged during the model animation movement, the performance of the animation effect may not meet expectations. The movement of the camera trajectory can track the animation more flexibly, thereby obtaining better effects and experience. The above is only an exemplary explanation and is not intended to limit all possible situations for generating animation videos, but it is not exhaustive here.

[0142] In this way, by calculating the spatial state of the model and the camera, the interaction between the model and the camera can be realized, so that the animation can simulate the dynamic changes in the real world more realistically.

[0143] In some embodiments, in response to an editing operation on a model transformation curve or a camera transformation curve, after determining a model motion trajectory and a camera motion trajectory according to parameters of the model transformation curve or the camera transformation curve, and determining a model motion speed and a camera motion speed according to the slope of the model transformation curve or the camera transformation curve, the method further includes: calculating a model spline curve and a camera spline curve in space according to the model motion trajectory and the camera motion trajectory; and in response to an editing operation on the model spline curve and / or the camera spline curve, calculating the model motion trajectory, the camera motion trajectory, the model motion speed and the camera motion speed according to the updated model spline curve and the updated camera spline curve.

[0144] In the disclosed embodiment, the process of calculating the model spline curve and the camera spline curve in space according to the model motion trajectory and the camera motion trajectory can first determine the positions of the model and the camera at different time points based on the model motion trajectory and the camera motion trajectory, and use these positions as the control points of the spline curve; then, the spline curve algorithm can be used to calculate the smooth curve passing through the control points to ensure that the curve smoothly transitions between the control points, and the calculated smooth curve is used as the model spline curve and the camera spline curve. The above is only an exemplary description and is not intended to limit all possible situations for calculating spline curves, but it is not exhaustive here.

[0145] In the embodiment of the present disclosure, the editing operation of the model spline curve and / or the camera spline curve may include moving control points, adding or deleting control points, adjusting the tension of the curve, etc. In response to the user's editing operation on the model spline curve and / or the camera spline curve, the updated model spline curve and the updated camera spline curve generated can reflect the new path of the model and the camera, that is, the new trajectory that the model and the camera will follow. The process of calculating the model motion trajectory, the camera motion trajectory, the model motion speed and the camera motion speed according to the updated model spline curve and the updated camera spline curve can first be interpolated based on the updated model spline curve and the updated camera spline curve to determine the exact position of the model and the camera at any time on the timeline, and then the corresponding model transformation curve and camera transformation curve can be adjusted based on the updated model spline curve and the updated camera spline curve; finally, the derivative of the adjusted model transformation curve and camera transformation curve can be calculated to obtain the slope, and then the model motion speed and camera motion speed can be obtained. The above is only an exemplary description and is not intended to limit all possible situations for calculating the model motion trajectory, camera motion trajectory, model motion speed and camera motion speed. This is just not an exhaustive list.

[0146] In this way, by using spline curves to represent the movement trajectory of the model and camera and being able to affect the model and camera property curves by moving and rotating the spline, the model and camera can be visualized, making the adjustment of the model and camera more intuitive, lowering the threshold for use, and improving the efficiency of animation video production. At the same time, the movement trajectory and speed can be recalculated immediately after the editing operation, providing real-time feedback for the animator, helping to quickly iterate and improve the animation effect, and further improving the efficiency of animation video production.

[0147] Figure 7 The flowchart of the method for generating a 3D model animation video in the embodiment of the present disclosure is shown as follows: Figure 7 As shown, the 3D model animation video generation method includes:

[0148] S701, using a 3D animation curve editor based on a 3D model animation video generation method;

[0149] S702, inputting model parameters and / or camera parameters in the editor to quickly add key frames;

[0150] S703, modifying the parameters of the key frames in the transformation curve generated by the editor;

[0151] S704, modify the left and right handles in the transformation curve generated by the editor;

[0152] S705, performing interpolation based on the modified transformation curve to generate a sequence frame;

[0153] S706, generating a position path 3D spline curve of the model and / or camera based on the sequence frames;

[0154] S707, output the spline curve to the 3D model canvas; and repeat to S702.

[0155] Figure 8 FIG. 4 shows a schematic diagram of a model transformation curve in an embodiment of the present disclosure. Figure 8 As shown, when the model transformation curve is the Z-axis coordinate model transformation curve, without considering other model transformation curves, the curve can enable the model to achieve a spring motion of jumping up and down in the picture.

[0156] Fig. 9 A schematic diagram of the camera adjustment interface in an embodiment of the present disclosure is shown. Fig. 9 As shown, the upper part of the interface is the movement trajectory of the camera, and the lower part of the interface is multiple camera transformation curves.

[0157] It should be understood that Figures 2 to 9 The schematic diagram shown is only exemplary and not restrictive, and it is scalable, and those skilled in the art can Figures 2 to 9 Various obvious changes and / or substitutions can be made to the examples, and the resulting technical solutions still fall within the scope of the disclosure of the embodiments of the present disclosure.

[0158] The present disclosure provides a three-dimensional model animation video generation device, such as Fig.10 As shown, the device may include: a key frame creation module 1001, which is used to create a key frame in response to received model parameters and camera parameters; the model parameters include at least one model attribute; the camera parameters include at least one camera attribute; a curve generation module 1002, which is used to output a model transformation curve and a camera transformation curve in response to a received interpolation type according to the model attributes and the camera attributes; the endpoints of the model transformation curve and the camera transformation curve are key frames; a speed determination module 1003, which is used to determine a model motion trajectory and a camera motion trajectory according to the parameters of the model transformation curve and the camera transformation curve in response to an editing operation on the model transformation curve or the camera transformation curve, and determine the model motion speed and the camera motion speed according to the slopes of the model transformation curve and the camera transformation curve; a video generation module 1004, which is used to calculate a model space state and a camera space state according to the model motion trajectory, the camera motion trajectory, the model motion speed and the camera motion speed in response to a detected video playback instruction, and generate an animation video based on the model space state and the camera space state.

[0159] In some embodiments, the key frame creation module 1001 includes: a model parameter determination submodule, which is used to determine the model state parameters at any moment based on the model parameters; a camera parameter determination submodule, which is used to determine the camera state parameters at any moment based on the camera parameters; a key frame creation submodule, which is used to create a key frame at the corresponding moment based on the model state parameters and the camera state parameters; an initial key frame submodule, which is used to create a key frame at the initial moment based on the initial state of the model and the initial state of the camera when there is only one key frame.

[0160] In some embodiments, the curve generation module 1002 includes: a model curve generation submodule, which is used to call a smoothing algorithm according to model attributes and output a model transformation curve corresponding to the interpolation type; the number of model transformation curves is consistent with the number of model attributes; a camera model generation submodule, which is used to call a smoothing algorithm according to camera attributes and output a camera transformation curve corresponding to the interpolation type; the number of camera transformation curves is consistent with the number of camera attributes.

[0161] In some embodiments, the speed determination module 1003 includes: a target determination submodule, which is used to determine the target transformation curve and the target key frame according to the position of the editing operation; a model curve updating submodule, which is used to call a smoothing algorithm according to the amplitude of the editing operation when the target transformation curve is a model transformation curve, adjust the model transformation curve in the interval corresponding to the target key frame according to a preset smoothing rule, output an updated model transformation curve, and use the updated model transformation curve as the model transformation curve; a camera curve updating submodule, which is used to call a smoothing algorithm according to the amplitude of the editing operation when the target transformation curve is a camera transformation curve, adjust the camera transformation curve in the interval corresponding to the target key frame according to a preset smoothing rule, output an updated camera transformation curve, and use the updated camera transformation curve as the camera transformation curve; a speed determination submodule, which is used to determine the model motion trajectory and the camera motion trajectory according to the parameters of the model transformation curve and the camera transformation curve, and determine the model motion speed and the camera motion speed according to the slopes of the model transformation curve and the camera transformation curve.

[0162] In some embodiments, the speed determination submodule is also used to: calculate the model state at any time according to the parameters of the model transformation curve; traverse all time periods according to the model state to generate a model motion trajectory; calculate the camera state at any time according to the parameters of the camera transformation curve; traverse all time periods according to the camera state to generate a camera motion trajectory; calculate the model speed at any time according to the slope of the model transformation curve; calculate the camera speed at any time according to the slope of the camera transformation curve.

[0163] In some embodiments, the video generation module 1004 includes: a model space determination submodule, which is used to update the model according to the model motion trajectory and the model motion speed, and determine the model space state at any moment; a camera space determination submodule, which is used to update the camera according to the camera motion trajectory and the camera motion speed, and determine the camera space state at any moment; an animation generation submodule, which is used to traverse all moments according to the model space state and the camera space state to generate an animation video.

[0164] In some embodiments, the 3D model animation video generation device 1000 further includes: a spline curve calculation module ( Fig.10 ), used to calculate the model spline curve and the camera spline curve in space according to the model motion trajectory and the camera motion trajectory; parameter updating module ( Fig.10 ), for responding to an editing operation on the model spline curve and / or the camera spline curve, calculating the model motion trajectory, the camera motion trajectory, the model motion speed and the camera motion speed according to the updated model spline curve and the updated camera spline curve.

[0165] For the description of specific functions and examples of each module and submodule of the device in the embodiment of the present disclosure, reference can be made to the relevant description of the corresponding steps in the above method embodiment, which will not be repeated here.

[0166] The three-dimensional model animation video generation device of the embodiment of the present disclosure can achieve fine adjustment for each specific parameter of the model and / or camera, quickly realize the video effect of special movement, and improve the generation speed and quality of the animation video.

[0167] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium and a computer program product.

[0168] Fig.11 A schematic block diagram of an example electronic device 1100 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit implementations of the present disclosure described and / or claimed herein.

[0169] like Fig.11As shown, the device 1100 includes a computing unit 1101, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 1102 or a computer program loaded from a storage unit 1108 to a random access memory (RAM) 1103. In the RAM 1103, various programs and data required for the operation of the device 1100 can also be stored. The computing unit 1101, the ROM 1102, and the RAM 1103 are connected to each other via a bus 1104. An input / output (I / O) interface 1105 is also connected to the bus 1104.

[0170] A number of components in the device 1100 are connected to the I / O interface 1105, including: an input unit 1106, such as a keyboard, a mouse, etc.; an output unit 1107, such as various types of displays, speakers, etc.; a storage unit 1108, such as a disk, an optical disk, etc.; and a communication unit 1109, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 1109 allows the device 1100 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0171] The computing unit 1101 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 1101 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, digital signal processors (DSP), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 1101 performs the various methods and processes described above, such as a three-dimensional model animation video generation method. For example, in some embodiments, the three-dimensional model animation video generation method may be implemented as a computer software program, which is tangibly included in a machine-readable medium, such as a storage unit 1108. In some embodiments, part or all of the computer program may be loaded and / or installed on the device 1100 via the ROM 1102 and / or the communication unit 1109. When the computer program is loaded into the RAM 1103 and executed by the computing unit 1101, one or more steps of the three-dimensional model animation video generation method described above may be performed. Alternatively, in other embodiments, the computing unit 1101 may be configured to execute the three-dimensional model animation video generation method in any other appropriate manner (for example, by means of firmware).

[0172] Various embodiments of the systems and techniques described above herein may be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application-specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0173] The program code for implementing the method of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that the program code, when executed by the processor or controller, enables the functions / operations specified in the flow chart and / or block diagram to be implemented. The program code may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0174] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or device, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory, a read-only memory, an erasable programmable read-only memory (EPROM), a flash memory, an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0175] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a cathode ray tube (CRT) or a liquid crystal display (LCD) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0176] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a Local Area Network (LAN), a Wide Area Network (WAN), and the Internet.

[0177] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps recorded in this disclosure can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution disclosed in this application can be achieved, and this document is not limited here.

[0178] The above specific implementations do not constitute a limitation on the protection scope of the present disclosure. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the principles of the present disclosure shall be included in the protection scope of the present disclosure.

Claims

1. A method for generating a three-dimensional model animation video, characterized in that: The method comprises: Creating a keyframe in response to received model parameters and camera parameters; the model parameters include at least one model attribute; the camera parameters include at least one camera attribute; In response to the received interpolation type, outputting a model transformation curve and a camera transformation curve according to the model attribute and the camera attribute; the endpoints of the model transformation curve and the camera transformation curve are the key frames; In response to an editing operation on the model transformation curve or the camera transformation curve, a model motion trajectory and a camera motion trajectory are determined according to parameters of the model transformation curve and the camera transformation curve, and a model motion speed and a camera motion speed are determined according to slopes of the model transformation curve and the camera transformation curve; the editing operation corresponds to the interpolation type; In response to the detected video playback instruction, a model space state and a camera space state are calculated according to the model motion trajectory, the camera motion trajectory, the model motion speed and the camera motion speed, and an animation video is generated based on the model space state and the camera space state.

2. The method according to claim 1, characterized in that The step of creating a key frame in response to the received model parameters and camera parameters comprises: Determine the model state parameters at any time according to the model parameters; Determine the camera state parameters at any time according to the camera parameters; Creating the key frame at a corresponding time according to the model state parameter and the camera state parameter; When there is only one key frame, the key frame is created at the initial moment according to the initial state of the model and the initial state of the camera.

3. The method according to claim 1, characterized in that: The step of outputting a model transformation curve and a camera transformation curve according to the model attribute and the camera attribute in response to the received interpolation type includes: According to the model attributes, a smoothing algorithm is called to output the model transformation curve corresponding to the interpolation type; the number of the model transformation curves is consistent with the number of the model attributes; According to the camera attributes, a smoothing algorithm is called to output the camera transformation curve corresponding to the interpolation type; the number of the camera transformation curves is consistent with the number of the camera attributes.

4. The method according to claim 1, characterized in that In response to the editing operation on the model transformation curve or the camera transformation curve, determining the model motion trajectory and the camera motion trajectory according to the parameters of the model transformation curve and the camera transformation curve, and determining the model motion speed and the camera motion speed according to the slopes of the model transformation curve and the camera transformation curve, including: Determining a target transformation curve and a target key frame according to the position of the editing operation; When the target transformation curve is a model transformation curve, a smoothing algorithm is called according to the amplitude of the editing operation, and the model transformation curve is adjusted in the interval corresponding to the target key frame according to a preset smoothing rule, and an updated model transformation curve is output, and the updated model transformation curve is used as the model transformation curve; When the target transformation curve is a camera transformation curve, a smoothing algorithm is called according to the amplitude of the editing operation, and the camera transformation curve is adjusted in the interval corresponding to the target key frame according to a preset smoothing rule, and an updated camera transformation curve is output, and the updated camera transformation curve is used as the camera transformation curve; The model motion trajectory and the camera motion trajectory are determined according to the parameters of the model transformation curve and the camera transformation curve, and the model motion speed and the camera motion speed are determined according to the slopes of the model transformation curve and the camera transformation curve.

5. The method according to claim 4, characterized in that The step of determining the model motion trajectory and the camera motion trajectory according to the parameters of the model transformation curve and the camera transformation curve, and determining the model motion speed and the camera motion speed according to the slopes of the model transformation curve and the camera transformation curve comprises: Calculating the model state at any time according to the parameters of the model transformation curve; According to the model state, traverse all moments to generate the model motion trajectory; Calculating the camera state at any moment according to the parameters of the camera transformation curve; According to the camera state, traverse all moments to generate the camera motion trajectory; Calculating the model velocity at any time according to the slope of the model transformation curve; The camera speed at any moment is calculated according to the slope of the camera transformation curve.

6. The method according to claim 1, characterized in that The method of responding to the detected video playback instruction, calculating a model space state and a camera space state according to the model motion trajectory, the camera motion trajectory, the model motion speed, and the camera motion speed, and generating an animation video based on the model space state and the camera space state, comprises: Update the model according to the model motion trajectory and the model motion speed, and determine the model space state at any time; Update the camera according to the camera motion trajectory and the camera motion speed to determine the camera space state at any moment; According to the model space state and the camera space state, all moments are traversed to generate the animation video.

7. The method according to claim 1, characterized in that In response to the editing operation on the model transformation curve or the camera transformation curve, after determining the model motion trajectory and the camera motion trajectory according to the parameters of the model transformation curve and the camera transformation curve, and determining the model motion speed and the camera motion speed according to the slopes of the model transformation curve and the camera transformation curve, the method further includes: Calculating a model spline curve and a camera spline curve in space according to the model motion trajectory and the camera motion trajectory; In response to an editing operation on the model spline curve and / or the camera spline curve, the model motion trajectory, the camera motion trajectory, the model motion speed, and the camera motion speed are calculated according to the updated model spline curve and the updated camera spline curve.

8. A 3D model animation video generation device, characterized in that: The device comprises: A key frame creation module, configured to create a key frame in response to received model parameters and camera parameters; the model parameters include at least one model attribute; the camera parameters include at least one camera attribute; A curve generation module, configured to output a model transformation curve and a camera transformation curve in response to the received interpolation type and according to the model attribute and the camera attribute; the endpoints of the model transformation curve and the camera transformation curve are the key frames; a curve updating module, configured to, in response to an editing operation on the model transformation curve or the camera transformation curve, determine a model motion trajectory and a camera motion trajectory according to parameters of the model transformation curve and the camera transformation curve, and determine a model motion speed and a camera motion speed according to slopes of the model transformation curve and the camera transformation curve; the editing operation corresponds to the interpolation type; The video generation module is used to respond to the detected video playback instruction, calculate the model space state and the camera space state according to the model motion trajectory, the camera motion trajectory, the model motion speed and the camera motion speed, and generate an animation video based on the model space state and the camera space state.

9. An electronic device, characterized in that: include: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 7.

10. A non-transitory computer-readable storage medium storing computer instructions, characterized in that: The computer instructions are used to cause the computer to execute the method according to any one of claims 1-7.

Citation Information

Patent Citations

  • System and method for generating stereoscopic image data

    CA2252063A1

  • Apparatus and method to generate an animated graphical object

    US20240054713A1