WO2022012349A1 - 动画处理方法、装置、电子设备及存储介质 - Google Patents

动画处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
WO2022012349A1
WO2022012349A1 PCT/CN2021/104074 CN2021104074W WO2022012349A1 WO 2022012349 A1 WO2022012349 A1 WO 2022012349A1 CN 2021104074 W CN2021104074 W CN 2021104074W WO 2022012349 A1 WO2022012349 A1 WO 2022012349A1
Authority
WO
WIPO (PCT)
Prior art keywords
animation
model
sample
augmented reality
model unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2021/104074
Other languages
English (en)
French (fr)
Inventor
张璟聪
胡蓓欣
陈元龙
陈志立
罗琳捷
刘晶
杨骁�
王国晖
杨建朝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing ByteDance Network Technology Co Ltd
ByteDance Inc
Original Assignee
Beijing ByteDance Network Technology Co Ltd
ByteDance Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing ByteDance Network Technology Co Ltd, ByteDance Inc filed Critical Beijing ByteDance Network Technology Co Ltd
Priority to US18/005,547 priority Critical patent/US12417574B2/en
Publication of WO2022012349A1 publication Critical patent/WO2022012349A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/20Three-dimensional [3D] animation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating three-dimensional [3D] models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating three-dimensional [3D] models or images for computer graphics
    • G06T19/20Editing of three-dimensional [3D] images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2012Colour editing, changing, or manipulating; Use of colour codes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling

Definitions

  • Embodiments of the present invention relate to virtual reality technology, and in particular, to an animation processing method, device, electronic device, and storage medium.
  • Augmented Reality is a technology in which real information and virtual information are superimposed.
  • the computer system processes the real information, and generates virtual information that matches and contains virtual objects, sounds or texts according to the real information; then, the virtual information is superimposed on the human-computer interaction interface that displays the real information, thereby enhancing the user's understanding of the real world. perception.
  • augmented reality animations for landmark buildings are pre-baking animations.
  • the content of the pre-made animation is fixed.
  • the pre-recorded animation content is played. Playing the pre-recorded animation lacks interaction with the user, the pre-recorded image cannot be adjusted according to the user's operation, and the usability is poor.
  • the present invention provides an animation processing method, device, electronic device and storage medium, so as to realize the adjustment of model animation according to user operation and improve the usability.
  • an animation processing method applied to a shader, including:
  • the augmented reality model consists of multiple model units
  • an embodiment of the present invention further provides an animation generation device, applied to a shader, including:
  • the animation sample acquisition module is used to obtain the animation sample of the model unit
  • the external interaction parameter acquisition module is used to acquire the external interaction parameters of the augmented reality model, and the augmented reality model consists of multiple model units;
  • the driving module is used to output the augmented reality model, and drive the animation sample of the model unit in the output augmented reality model according to the external interaction parameters.
  • an embodiment of the present invention further provides an electronic device, where the electronic device includes:
  • processors one or more processors
  • the one or more processors implement the animation processing method shown in the embodiments of the present disclosure.
  • an embodiment of the present invention further provides a storage medium containing computer-executable instructions, and the computer-executable instructions, when executed by a computer processor, are used to execute the animation processing method shown in the embodiments of the present disclosure.
  • embodiments of the present invention further provide a computer program product, including computer program instructions, the computer program instructions enable a computer to execute the animation processing method shown in the embodiments of the present disclosure.
  • an embodiment of the present invention further provides a computer program, which, when the computer program runs on a computer, causes the computer to execute the animation processing method shown in the embodiment of the present disclosure.
  • the animation processing solution disclosed in the embodiment of the present disclosure can generate an animation sample of a model unit with a parameter transfer interface, acquire external interaction parameters of the augmented reality model when the user triggers the augmented reality, and use the external interaction parameters to drive the animation sample of the model unit example. Compared with the current user's inability to control the preset model change animation, the ease of use is poor.
  • the embodiment of the present disclosure can drive the animation sample of the model unit according to the external interaction parameters, realize the adjustment of the model animation according to the user operation, and improve the usability.
  • Embodiment 1 is a flowchart of an animation processing method in Embodiment 1 of the present invention.
  • FIG. 2 is a schematic structural diagram of an animation processing device in Embodiment 2 of the present invention.
  • FIG. 3 is a schematic structural diagram of an electronic device in Embodiment 3 of the present invention.
  • Embodiment 1 is a flowchart of an animation processing method provided in Embodiment 1 of the present invention. This embodiment can be applied to the situation of playing augmented reality model animations in augmented reality.
  • the method can be executed by an electronic device that implements augmented reality, and the device can For terminals such as smart phones and tablet computers, it specifically includes the following steps:
  • Step 110 Obtain an animation sample of the model unit.
  • Animation samples can be made in advance through 3D Digital Content Creation (DCC) software.
  • 3D digital content creation software can be Houdini for procedural animation.
  • the animation example is also called demo, and the augmented reality model involved in the embodiment of the present disclosure is composed of model units. Model units can be fixed shapes, such as cube boxes.
  • the animation sample obtained in step 110 is a motion or deformation animation of a model unit. Different types of animation samples can be edited to match the display of the augmented reality model.
  • the pre-generated animation samples can be stored in the local storage, or the animation samples can be downloaded from the server and cached locally to obtain the animation samples of the model unit.
  • the animation sample is the first animation sample.
  • step 110 may be implemented as obtaining a first animation sample of the model unit, where the first animation sample represents the animation of rotating the model unit along a preset coordinate axis at the center point of the model unit.
  • the model unit is edited to complete the production of the first animation example.
  • the first animation sample provides a preset coordinate axis setting interface or a rotation angle setting interface, or the like.
  • the reference axis when the model unit is rotated can be set through the preset coordinate axis setting interface, and the rotation angle of the model unit on the preset coordinate axis can be set through the rotation angle setting interface.
  • a cube-shaped model unit may be set to rotate continuously along a preset coordinate axis, or a cube-shaped model unit may be set to rotate a preset angle along a preset coordinate axis in a preset direction.
  • the animation sample is the second animation sample.
  • step 110 may be implemented as acquiring a second animation sample of the model unit, where the second animation sample represents the animation of the model unit jumping on the preset coordinate axis.
  • the model unit is edited to complete the production of the second animation example.
  • the second animation sample provides a preset coordinate axis setting interface, a beating frequency setting interface, or a beating amplitude setting interface, and the like.
  • the reference coordinate axis of the model unit beating can be set through the preset coordinate axis setting interface, and the beating direction of the model unit is parallel to the reference coordinate axis.
  • a preset coordinate axis for the beating of the model unit in the shape of a cube may be set, and the height or frequency of the beating of the model unit in the shape of a cube may be set on the preset coordinate axis.
  • the animation sample is a third animation sample.
  • step 110 may be implemented as obtaining a third animation sample of the model unit, where the third animation sample indicates that the surface texture or color of the model unit changes periodically.
  • the animation sample can also change the surface texture of the model element.
  • the surface of the model unit is a preset color or preset texture.
  • the surface graphics of the model unit changes from the initial state (such as preset color or preset texture) to the target state, and then from the target state. Restore to the original state.
  • the target state includes a target color or a target texture
  • the target color can be a color with a fixed color difference from the preset color
  • the target texture can be the actual surface texture of the object to which the augmented reality model is mapped. If the model element is a cube element, the color of a certain surface of the cube is the average color of the four vertices of the surface.
  • the interface provided by the above animation example can receive different types of parameter data.
  • a floating-point argument can be received.
  • the floating-point parameter is no longer a simple 0-1 trigger (0/1 means triggering a certain animation or not triggering a certain animation).
  • the floating-point parameter can achieve smooth interaction.
  • Implementing procedural animation through shaders Using a graphics processing unit (GPU) to calculate the motion of each vertex, complex visual effects can be accomplished in real time and efficiently.
  • GPU graphics processing unit
  • the embodiment of the present disclosure is applied to a graphics processor GPU, and the graphics processor operates on each model unit in the augmented reality model in a parallel manner, thereby enabling each model unit in the augmented reality model to synchronously execute animation samples.
  • Step 120 Acquire external interaction parameters of the augmented reality model, where the augmented reality model is composed of multiple model units.
  • step 120 can acquire external interaction parameters of the augmented reality model, and then control the model unit through the external interaction parameters.
  • Real-time sensing data can be obtained through the terminal sensor, and the sensing data can be converted into external interaction parameters that can be used to drive the animation sample according to the interface provided by the animation sample.
  • the user may activate the augmented reality function in the preset application, and the preset application may be the camera function of the terminal, or the application having the augmented reality function.
  • the terminal camera acquires the current image, and the terminal displays the acquired current image on the preview page. If it is recognized that there is a corresponding augmented reality model for the photographed object in the current image, the augmented reality model is mapped onto the building image.
  • the photographed objects may be landmark buildings, or may be entities corresponding to other pre-made enhanced display models such as vehicles.
  • the shape of the model unit is a cube unit for illustration.
  • the model unit is a cube unit;
  • the augmented reality model is a building model; and
  • the building model is composed of multiple cube units.
  • the preset coordinate axis in the first animation example can be determined according to any one of the following methods: the preset coordinate axis is determined according to the sliding direction of the sliding track input by the user on the terminal screen; or, according to the augmented reality model. The preset coordinate axis is determined by the mapped object and the shooting direction of the terminal; or, the preset coordinate axis is determined according to the moving direction of the camera of the terminal.
  • the preset coordinate axis in the first animation example is the reference rotation axis when the model unit rotates.
  • the touch screen can detect the trajectory corresponding to the sliding operation.
  • the rotation axis can be determined according to the sliding direction of the track.
  • the rotation axis can be selected from the three coordinate axes of the three-dimensional coordinate system.
  • the three coordinate axes are the x-axis, the y-axis, and the z-axis.
  • the x-axis represents the horizontal direction and the horizontal direction
  • the y-axis is vertical to the vertical plane.
  • the z-axis represents the horizontal plane longitudinal direction.
  • the sliding direction of the sliding track can be used as the tangent direction when the cube unit rotates, and then the rotation axis can be determined. For example, if the user slides along the x-axis direction, the preset coordinate axis is determined, that is, the rotation axis is the z-axis.
  • the preset coordinate axis may also be determined according to the shooting direction of the shooting object mapped by the augmented reality model and the terminal.
  • the shooting direction is mapped to the surface of the shooting object, and then the rotation direction of the cube unit is determined, and then the preset coordinate axis is determined.
  • the direction is the negative x-axis direction, which is the rotation direction of the cube unit.
  • the preset coordinate axis is the z-axis.
  • the user can move.
  • the vertical movement performed by the user may be determined by the size of the content in the image acquired by the camera, and the lateral movement performed by the user may be determined by the displacement of the object in the image acquired by the camera.
  • the main movement direction can be determined from the vertical movement and the horizontal movement, and the coordinate axis corresponding to the main movement direction is used as the preset coordinate axis.
  • the rotation angle can be a fixed value, for example, a rotation of 90 degrees. It is also possible to rotate the cube unit without interruption after determining the axis of rotation. Further, the rotation speed, angle, etc. of the cube unit can also be adjusted according to the user's operation.
  • the world coordinates of the center point of the cube element can be stored into each vertex of the cube element. Each vertex is rotated around the center point in the vertex shader. The color of the vertices uses the color of the center coordinates.
  • the overall process animation of the building is a process animation of flipping a certain surface or multiple cube units on a certain axis in turn to achieve a wave-like flip.
  • the beating amplitude of the model unit beating on the preset coordinate axis in the second animation sample is determined according to the beat, rebeat or music intensity of the target audio.
  • the beating amplitude of the model unit may be determined according to the beat, rebeat or music intensity of the target audio.
  • the target audio may be an audio selected by the user, or may be a target audio that is read by the terminal after recognizing the augmented reality model and bound to the augmented reality model.
  • the target audio can be the introduction audio of the museum, or the background music currently playing in the museum.
  • the surface patterns of the model elements in the third animation example are processed according to the Perlin noise algorithm.
  • Perlin Noise can be combined with model Vertex Attributes and interactive control parameters. Introducing Perlin noise to model vertices so that the vertices of the cube model elements are distributed according to the building's solid surface characteristics, making the effect more solid rather than flat.
  • the building surface texture is obtained through the terminal camera, and the surface pattern close to the actual building surface texture is simulated by the Perlin noise algorithm. Make this surface pattern the target texture in the third animation sample. In this case, after the surface pattern of the model unit is changed to the surface pattern, the surface pattern may not be restored to the initial state, and the surface pattern may be maintained.
  • the third animation sample can be combined with the first animation sample and the second animation sample to realize that after the surface pattern of the model unit is subjected to Perlin noise processing, the rotation or second animation shown in the first animation sample is performed. The bouncing shown in the animation sample.
  • the attribute information of the model unit is set, and the attribute information includes one or more of vertex coordinates, center point coordinates, rotation start parameters or jump start parameters.
  • the rotation start parameters indicate whether the first animation sample is allowed to be driven, and the jump start parameters
  • the parameter indicates whether to allow the second animation sample to be driven.
  • the properties of the model element itself can also be edited.
  • the vertex coordinates can be the coordinates of each vertex of the cube.
  • the coordinates of the center point can be the coordinates of the center point of the cube.
  • the jump start parameter indicates whether to allow the vertex to move, and it can be allowed or prohibited by a boolean value.
  • the rotation enable parameter indicates whether the model element is allowed to rotate, and can be allowed or prohibited by a Boolean value.
  • the rotation start parameter represents the identity of the axis around which it is represented, such as the Y-axis, X-axis or Z-axis, which can be represented using integer data. If the rotation of only two axes is enabled, such as the Y axis and the Z axis, a Boolean value can be used to identify the Y axis or the Z axis, respectively.
  • Step 130 output the augmented reality model, and drive an animation sample of the model unit in the output augmented reality model according to the external interaction parameters.
  • the model elements in the model are in the initial state. If the user-triggered external interaction parameter is acquired in step 120, it is passed to the shader through the shader's uniform, and each model unit is processed separately in the shader.
  • the animation sample may be a combination of one or more of the first animation sample, the second animation sample, or the third animation sample.
  • each cube unit executes the animation sample and outputs the corresponding animation effect. For example, when the user slides the screen, the animation effect of the cube unit rolling in waves along the x-axis can be triggered, or when the terminal camera moves upwards, the animation effect of the cube unit rolling up in waves can be triggered, etc.
  • the adjustment parameters are determined according to bone detection or face detection, and the adjustment parameters are used to control the driving degree of the first animation sample, the second animation sample or the third animation sample; Model units are adjusted.
  • the terminal can try to obtain new external interaction parameters, and then update the driven animation sample.
  • Bone detection or face detection can be performed during or after playing an animation sample.
  • Skeleton detection can detect the actions made by the user in the air, such as: a certain gesture or body movement (such as nodding, running or jumping, etc.).
  • Face detection can detect the facial expression of the user, and the user can be the target person to be photographed (acquired by the rear camera) or the user of the handheld terminal (acquired by the front camera).
  • Adjustment parameters can be determined from facial expressions or actions.
  • the adjustment parameter can be to increase or decrease the amplitude of the current animation sample according to the preset adjustment unit. In turn, the animation samples can be adjusted more precisely by the user.
  • the animation processing method disclosed in the embodiment of the present disclosure can generate an animation sample of a model unit with a parameter transfer interface, acquire external interaction parameters of the augmented reality model when the user triggers the augmented reality, and use the external interaction parameters to drive the animation sample of the model unit example. Compared with the current user's inability to control the preset model change animation, the ease of use is poor.
  • the embodiment of the present disclosure can drive the animation sample of the model unit according to the external interaction parameters, realize the adjustment of the model animation according to the user operation, and improve the usability.
  • FIG. 2 is a schematic structural diagram of an animation processing apparatus provided by Embodiment 2 of the present disclosure. This embodiment is applicable to the situation of playing an augmented reality model animation in augmented reality.
  • the method can be executed by a device that implements augmented reality, and the device can be Smart phone, tablet computer, etc., the device includes: an animation sample acquisition module 210 , an external interaction parameter acquisition module 220 and a driving module 230 . in:
  • An animation sample acquisition module 210 used for acquiring animation samples of the model unit
  • the external interaction parameter acquisition module 220 is used for acquiring external interaction parameters of the augmented reality model, and the augmented reality model is composed of a plurality of model units;
  • the driving module 230 is configured to output an augmented reality model, and drive an animation example of a model unit in the output augmented reality model according to external interaction parameters.
  • animation sample acquisition module 210 is used for:
  • first animation sample of the model unit where the first animation sample represents the animation of rotating the model unit along the preset coordinate axis at the center point of the model unit;
  • model element attribute setting module for:
  • the attribute information includes one or more of vertex coordinates, center point coordinates, rotation start parameters or jump start parameters.
  • the rotation start parameters indicate whether the first animation sample is allowed to be driven, and the jump start parameters indicate whether Allows driving a second animation sample.
  • animation sample acquisition module 210 is used for:
  • the third animation sample of the model unit is obtained, and the third animation sample represents that the surface texture or color of the model unit changes periodically.
  • the external interaction parameter acquisition module 220 is used for:
  • the surface patterns of the model elements in the third animation example are processed according to the Perlin noise algorithm.
  • an adjustment module for determining adjustment parameters according to bone detection or face detection, and the adjustment parameters are used to control the driving degree of the first animation sample, the second animation sample or the third animation sample;
  • the model units in the output augmented reality model are adjusted according to the adjustment parameters.
  • model unit is a cube unit;
  • augmented reality model is a building model;
  • building model is composed of a plurality of cube units.
  • the animation sample acquisition module 210 generates an animation sample of a model unit with a parameter transfer interface, and when the user triggers the augmented reality, the external interaction parameter acquisition module 220 acquires the external interaction parameters of the augmented reality model , the driving module 230 uses the external interaction parameters to drive the animation instance of the model element.
  • the ease of use is poor.
  • the embodiment of the present disclosure can drive the animation sample of the model unit according to the external interaction parameters, realize the adjustment of the model animation according to the user operation, and improve the usability.
  • the animation processing apparatus provided by the embodiment of the present invention can execute the animation processing method provided by any embodiment of the present invention, and has functional modules and beneficial effects corresponding to the execution method.
  • Terminal devices in the embodiments of the present disclosure may include, but are not limited to, such as mobile phones, notebook computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers, portable android devices), PMPs (portable multimedia devices) Players, personal multimedia players), mobile terminals such as in-vehicle terminals (such as in-vehicle navigation terminals), etc., as well as fixed terminals such as digital TV (television, television), desktop computers, and the like.
  • the electronic device shown in FIG. 3 is only an example, and should not impose any limitation on the function and scope of use of the embodiments of the present disclosure.
  • the electronic device 800 may include a processing device (eg, a central processing unit, a graphics processor, etc.) 801, which may be based on a program stored in a read-only memory (ROM) 802 or from a storage device 808 programs loaded into random access memory (RAM) 803 to perform various appropriate actions and processes. In the RAM 803, various programs and data required for the operation of the electronic device 800 are also stored.
  • the processing device 801, the ROM 802, and the RAM 803 are connected to each other through a bus 804.
  • An input/output (I/O) interface 805 is also connected to bus 804 .
  • I/O interface 805 the following devices may be connected to the I/O interface 805: input devices 806 including, for example, a touch screen, touchpad, keyboard, mouse, camera, microphone, accelerometer, gyroscope, etc.; including, for example, a liquid crystal display (LCD) Output device 807 , speaker, vibrator, etc.; storage device 808 including, eg, magnetic tape, hard disk, etc.; and communication device 809 .
  • Communication means 809 may allow electronic device 800 to communicate wirelessly or by wire with other devices to exchange data. While FIG. 3 shows electronic device 800 having various means, it should be understood that not all of the illustrated means are required to be implemented or provided. More or fewer devices may alternatively be implemented or provided.
  • embodiments of the present disclosure include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the method illustrated in the flowchart.
  • the computer program may be downloaded and installed from the network via the communication device 809, or from the storage device 808, or from the ROM 802.
  • the processing device 801 the above-mentioned functions defined in the methods of the embodiments of the present disclosure are executed.
  • the computer-readable medium mentioned above in the present disclosure may be a computer-readable signal medium or a computer-readable storage medium, or any combination of the above two.
  • the computer-readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus or device, or a combination of any of the above.
  • Computer readable storage media may include, but are not limited to, electrical connections with one or more wires, portable computer disks, hard disks, random access memory (RAM), read only memory (ROM), erasable Programmable read-only memory (electrical programmable ROM, EPROM or flash memory), optical fiber, portable compact disk read-only memory (compact disc ROM, CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.
  • a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device.
  • a computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave with computer-readable program code embodied thereon. Such propagated data signals may take a variety of forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the foregoing.
  • a computer-readable signal medium can also be any computer-readable medium other than a computer-readable storage medium that can transmit, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device .
  • Program code embodied on a computer-readable medium may be transmitted using any suitable medium, including but not limited to: electrical wire, optical fiber cable, RF (radio frequency), etc., or any suitable combination of the foregoing.
  • the above-mentioned computer-readable medium may be included in the above-mentioned electronic device; or may exist alone without being assembled into the electronic device.
  • the above-mentioned computer-readable medium carries one or more programs, and when the above-mentioned one or more programs are executed by the electronic device, the electronic device: acquires at least two Internet Protocol addresses; A node evaluation request for an Internet Protocol address, wherein the node evaluation device selects an Internet Protocol address from the at least two Internet Protocol addresses and returns it; receives the Internet Protocol address returned by the node evaluation device; wherein the obtained The Internet Protocol address indicates an edge node in the content distribution network.
  • the above computer-readable medium carries one or more programs, and when the above one or more programs are executed by the electronic device, the electronic device: receives a node evaluation request including at least two Internet Protocol addresses; From the at least two Internet Protocol addresses, the Internet Protocol address is selected; the selected Internet Protocol address is returned; wherein, the received Internet Protocol address indicates an edge node in the content distribution network.
  • the present disclosure also provides a computer program, which enables a computer to execute the animation processing method provided by the above embodiments.
  • Computer program code for carrying out operations of the present disclosure may be written in one or more programming languages, including object-oriented programming languages—such as Java, Smalltalk, C++, but also conventional Procedural programming language - such as the "C" language or similar programming language.
  • the program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server.
  • the remote computer can be connected to the user's computer through any kind of network, including a local area network (LAN) or a wide area network (WAN), or it can be connected to an external computer ( For example, using an Internet service provider to connect via the Internet).
  • LAN local area network
  • WAN wide area network
  • Internet service provider for example, using an Internet service provider to connect via the Internet.
  • each block in the flowchart or block diagrams may represent a module, segment, or portion of code that contains one or more logical functions for implementing the specified functions executable instructions.
  • the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.
  • each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations can be implemented in dedicated hardware-based systems that perform the specified functions or operations , or can be implemented in a combination of dedicated hardware and computer instructions.
  • the units involved in the embodiments of the present disclosure may be implemented in a software manner, and may also be implemented in a hardware manner.
  • the name of the unit does not constitute a limitation of the unit itself under certain circumstances, for example, the first obtaining unit may also be described as "a unit that obtains at least two Internet Protocol addresses".

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Architecture (AREA)
  • Processing Or Creating Images (AREA)

Abstract

一种动画处理方法、装置、电子设备及存储介质,应用于着色器,该方法包括:获取模型单元的动画样例(S110);获取增强现实模型的外部交互参数,增强现实模型由多个模型单元组成(S120);输出增强现实模型,根据外部交互参数在输出的增强现实模型中驱动模型单元的动画样例(S130)。能够根据外部交互参数驱动模型单元的动画样例,实现根据用户操作对模型动画进行调整,提高易用性。

Description

动画处理方法、装置、电子设备及存储介质
相关申请的交叉引用
本申请要求于2020年7月16日提交中国专利局、申请号为202010688598.3、发明名称为“动画处理方法、装置、电子设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本发明实施例涉及虚拟现实技术,尤其涉及一种动画处理方法、装置、电子设备及存储介质。
背景技术
增强现实(Augmented Reality,简称AR)是一种现实信息与虚拟信息相叠加的技术。首先,计算机系统处理现实信息,根据现实信息生成匹配且包含虚拟物体、声音或文字等形式的虚拟信息;然后,将虚拟信息叠加到显示现实信息的人机交互界面中,从而增强用户对现实世界的感知。
目前,地标建筑物的增强现实动画为预制动画(pre-baking Animation)。预制动画的内容固定,在触发播放后,播放预先录制的动画内容。播放预先录制的动画缺少与用户的交互,无法根据用户操作对预先录制的画面进行调整,易用性差。
发明内容
本发明提供一种动画处理方法、装置、电子设备及存储介质,以实现根据用户操作对模型动画进行调整,提高易用性。
第一方面,本发明实施例提供了一种动画处理方法,应用于着色器,包括:
获取模型单元的动画样例;
获取增强现实模型的外部交互参数,增强现实模型由多个模型单元组成;
输出增强现实模型,根据外部交互参数在输出的增强现实模型中驱动模型单元的动画样例。
第二方面,本发明实施例还提供了一种动画生成装置,应用于着色器,包括:
动画样例获取模块,用于获取模型单元的动画样例;
外部交互参数获取模块,用于获取增强现实模型的外部交互参数,增强现实模型由多个模型单元组成;
驱动模块,用于输出增强现实模型,根据外部交互参数在输出的增强现实模型中驱动模型单元的动画样例。
第三方面,本发明实施例还提供了一种电子设备,电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如本公开实施例所示的动画处理方法。
第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行如本公开实施例所示的动画处理方法。
第五方面,本发明实施例还提供了一种计算机程序产品,包括计算机程序指令,该计算机程序指令使得计算机执行如本公开实施例所示的动画处理方法。
第六方面,本发明实施例还提供了一种计算机程序,当计算机程序在计算机上运行时,使得计算机执行如本公开实施例所示的动画处理方法。
本公开实施例公开的动画处理方案,能够生成具备传参接口的模型单元的动画样例,当用户触发增强现实时,获取增强现实模型的外部交互参数,使用外部交互参数驱动模型单元的动画样例。相对于目前用户无法控制预先设置的模型变化动画,易用性差。本公开实施例能够根据外部交互参数驱动模型单元的动画样例,实现根据用户操作对模型动画进行调整,提高易用性。
附图说明
图1是本发明实施例一中的动画处理方法的流程图;
图2是本发明实施例二中的动画处理装置的结构示意图;
图3是本发明实施例三中的电子设备结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描 述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的动画处理方法的流程图,本实施例可适用于增强现实中播放增强现实模型动画的情况,该方法可以由实现增强现实的电子设备来执行,该设备可以为智能手机、平板电脑等终端,具体包括如下步骤:
步骤110、获取模型单元的动画样例。
可以预先通过3D数字内容创建(Digital Content Creation,DCC)软件制作动画样例。3D数字内容创建软件可以为适用于制作过程化动画的Houdini。动画样例又称demo,本公开实施例涉及的增强现实模型由模型单元组成。模型单元可以是固定形状,如立方体box(盒)。步骤110中获取的动画样例为一个模型单元的一种运动或形变动画。可以编辑不同类型的动画样例,以便配合增强现实模型的显示。
可以在本地存储器中存储预先生成的动画样例,也可以从服务器下载动画样例后,在本地进行缓存,以获取模型单元的动画样例。
在一种实现方式中,动画样例为第一动画样例。此时,步骤110可实施为,获取模型单元的第一动画样例,第一动画样例表示在模型单元的中心点沿预设坐标轴旋转模型单元的动画。在上述动画样例的制作软件中,对模型单元进行编辑,完成第一动画样例的制作。可选的,第一动画样例提供预设坐标轴设置接口或旋转角度设置接口等。在后续步骤中,可以通过预设坐标轴设置接口设置模型单元转动时的基准轴,可以通过旋转角度设置接口设置模型单元在预设坐标轴上旋转的角度等。示例性的,可以设置形状为立方体的模型单元沿预设坐标轴不间断的转动,也可以设置形状为立方体的模型单元沿预设坐标轴向预设方向转动预设角度。
在另一种实现方式中,动画样例为第二动画样例。此时,步骤110可实施为,获取模型单元的第二动画样例,第二动画样例表示模型单元在预设坐标轴上跳动的动画。在上述动画样例的制作软件中,对模型单元进行编辑,完成第二动画样例的制作。可选的,第二动画样例提供预设坐标轴设置接口、跳动频率设置接口或跳动幅度设置接口等。在后续步骤中,可以通过预设坐标轴设置接口设置模型单元跳动的基准坐标轴,模型单元的跳动方向与基准坐标轴平行,可以通过跳动幅度设置接口设置模型单元在预设坐标轴上跳动的幅度,可以通过跳动频率设置接口设置模型单元在预设坐标轴上跳动的频率等。示例性的,可以设置形状为立方体的模型单元跳动的预设坐标轴,可以设置形状为立方体的模型单元 在预设坐标轴上跳动的高度或频率。
在再一种实现方式中,动画样例为第三动画样例。此时,步骤110可实施为,获取模型单元的第三动画样例,第三动画样例表示模型单元的表面纹理或颜色进行周期性变化。动画样例除了转动或移动模型单元外,还可以改变模型单元的表面纹理。例如,初始状态下模型单元表面为预设颜色或预设纹理,第三动画样例中模型单元的表面图形由初始状态(如预设颜色或预设纹理)变化至目标状态,再由目标状态还原至初始状态。目标状态包括目标颜色或目标纹理,目标颜色可以为与预设颜色存在固定色差的颜色,目标纹理可以为增强现实模型映射到的拍摄物的实际表面纹理等。若模型单元为立方体单元,则立方体某一个表面的颜色为该表面四个顶点的颜色均值。
上述动画样例提供的接口可以接收不同类型的传参数据。例如,可以接收浮点数参数。浮点数参数不再是简单的0-1触发(0/1表示触发某段动画与不触发某段动画),浮点数参数能够实现流畅的交互效果。通过着色器实现过程化动画利用图像处理器(graphics processing unit,GPU)计算每个顶点的运动方式,可以实时且有效地完成较复杂的视觉效果。
本公开实施例应用于图形处理器GPU,图形处理器通过并行方式分别对增强现实模型中每个模型单元进行操作,进而能够实现增强现实模型中各个模型单元同步执行动画样例。
步骤120、获取增强现实模型的外部交互参数,增强现实模型由多个模型单元组成。
目前的增强现实模型只能按照预先录制的固定内容播放动画样例,无法根据实际的增强现实场景对动画样例进行调整,因此易用性差,动画效果死板,影响增强现实体验。本公开实施例中,步骤120能够获取增强现实模型的外部交互参数,进而通过外部交互参数控制模型单元。
可以通过终端传感器获取实时的感应数据,根据动画样例提供的接口,将感应数据转换为可用于驱动动画样例的外部交互参数。
用户可以在预设应用中启动增强现实功能,预设应用可以为终端的拍照功能,或者具有增强现实功能的应用。终端摄像头获取当前图像,终端将获取到的当前图像显示在预览页面中。若识别到当前图像中的拍摄物存在相应的增强现实模型,则将增强现实模型映射到建筑物图像上。拍摄物可以为地标建筑物,可以为车辆等其他预先制作完成的增强显示模型对应的实体。
为了方便说明,下述实施例中以模型单元的形状为立方体单元为例进行说明,此时, 模型单元为立方体单元;增强现实模型为建筑模型;建筑物模型由多个立方体单元组成。
可选的,可以根据下述任意一种方式确定第一动画样例中的预设坐标轴:根据用户在终端屏幕中输入的滑动轨迹的滑动方向确定预设坐标轴;或者,根据增强现实模型映射到的拍摄物与终端所呈拍摄方向确定预设坐标轴;或者,根据终端的摄像头的移动方向确定预设坐标轴。
第一动画样例中的预设坐标轴为模型单元旋转时参考的旋转轴。当用户在终端屏幕显示的预览页面中进行滑动操作时,触摸屏可检测到该滑动操作对应的轨迹。根据该轨迹的滑动方向可以确定旋转轴。可选的,旋转轴可以从三维坐标系的三个坐标轴中选取,三个坐标轴分别为x轴、y轴和z轴,x轴表示水平方向横向方向,y轴垂直平面竖直方向,z轴表示水平平面纵向方向。可以将滑动轨迹的滑动方向作为立方体单元转动时的切线方向,进而确定旋转轴。例如,用户沿x轴方向滑动,则确定预设坐标轴,即旋转轴为z轴。
预设坐标轴还可以根据增强现实模型映射到的拍摄物与终端所呈拍摄方向确定预设坐标轴。将该拍摄方向映射到拍摄物表面,进而确定立方体单元的旋转方向,进而确定预设坐标轴。例如,用户站在建筑物右前方拍摄建筑物,此时将拍摄方向映射到建筑物上时,该方向为x轴负方向,该方向为立方体单元的旋转方向。进而推导出预设坐标轴为z轴。
在增强现实过程中,用户可以进行移动。可以通过摄像头获取到的图像的中内容的大小确定用户进行的纵向移动,通过摄像头获取到的图像中物体的位移确定用户进行的横向移动。可以从纵向移动和横向移动中确定主移动方向,将主移动方向对应的坐标轴作为预设坐标轴。
在第一动画样例中,配置预设坐标轴后,旋转角度可以为固定值,例如旋转90度。也可以在确定旋转轴后,不间断的转动立方体单元。进一步的,还可以根据用户操作,调整立方体单元的转动速度、角度等。在对立方体单元进行旋转时,可以将立方体单元的中心点的世界坐标存储到立方体单元的每个顶点中。每个顶点在顶点着色器(vertex shader)中绕中心点旋转。顶点的颜色使用中心坐标的颜色。建筑物整体过程动画为,依次翻转某个面或某个轴上的多个立方体单元,实现波浪式翻转的过程动画。
可选的,根据目标音频的节拍、重拍或音乐强度确定第二动画样例中模型单元在预设坐标轴上跳动的跳动幅度。
第二动画样例获取预设坐标轴的方式可以参照上述第一动画样例的预设坐标轴的获取方式。第二动画样例中,可以根据目标音频的节拍、重拍或音乐强度确定模型单元的跳动幅度。目标音频可以为用户选择的某个音频,也可以为终端在识别到增强现实模型后, 读取的与该增强现实模型绑定的目标音频。例如,增强现实模型为博物馆模型,则目标音频可以为博物馆的介绍音频,也可以为博物馆内当前播放的背景音乐等。可以通过分析目标音频,确定目标音频中包含的节拍、重拍或音乐强度。节拍越重、音乐强度越强,跳动幅度越大。
可选的,根据柏林噪声算法处理第三动画样例中模型单元的表面图案。
可以将柏林噪声(Perlin Noise)与模型顶点参数(Vertex Attributes)和交互控制参数相结合。将柏林噪声引用到模型顶点,使得立方体模型单元的顶点按照建筑物实体表面特征分布,使效果更佳立体而非平面。通过终端摄像头获取建筑物表面纹理,通过柏林噪声算法模拟出接近建筑实际表面纹理的表面图案。将该表面图案作为第三动画样例中目标纹理。此时,模型单元表面图案在变更到该表面图案后,可以不还原至初始状态,维持该表面图案。
进一步的,第三动画样例可以与第一动画样例和第二动画样例相结合,实现将模型单元表面图案进行柏林噪声处理后,在进行第一动画样例所示的旋转或第二动画样例所示的跳动。
进一步的,设置模型单元的属性信息,属性信息包括顶点坐标、中心点坐标、旋转启动参数或跳动启动参数中的一种或多种,旋转启动参数表示是否允许驱动第一动画样例,跳动启动参数表示是否允许驱动第二动画样例。
在本公开实施例中,模型单元自身属性也可以被编辑。顶点坐标可以为立方体各顶点坐标。中心点坐标可以为立方体中心点坐标。跳动启动参数表示是否允许顶点移动,可以通过布尔值表示允许和禁止。在一种实现方式中,旋转启动参数表示是否允许模型单元旋转,可以通过布尔值表示允许和禁止。在另一种实现方式中,旋转启动参数表示所围绕的轴的标识,例如Y轴、X轴或Z轴,可以使用整型数据表示。若只开放两个轴的转动,如Y轴和Z轴,则可以使用布尔值分别标识Y轴或Z轴。
步骤130、输出增强现实模型,根据外部交互参数在输出的增强现实模型中驱动模型单元的动画样例。
输出增强现实模型时,模型中的模型单元为初始状态。若步骤120获取了用户触发的外部交互参数,则通过着色器的uniform传入到着色器,在着色器中分别对每个模型单元进行处理。
通过传参方式将外部交互参数传入动画样例中。动画样例可以为第一动画样例、第二动画样例或第三动画样例中的一个或多个的组合。驱动动画样例后,各立方体单元执行动 画样例,输出相应的动画效果。例如:用户滑动屏幕时可触发立方体单元沿x轴波浪翻滚的动画效果,或者,终端镜头向上移动时触发立方体单元向上波浪翻滚的动画效果等。
进一步的,根据骨骼检测或人脸检测确定调整参数,调整参数用于控制第一动画样例、第二动画样例或第三动画样例的驱动程度;根据调整参数对输出的增强现实模型中模型单元进行调整。
在播放动画样例的过程中,终端可以试试获取新的外部交互参数,进而更新驱动的动画样例。在播放动画样例的过程中或播放完一段动画样例后,可以进行骨骼检测或人脸检测。骨骼检测可以检测出用户的隔空做出的动作,如:某个手势或肢体动作(如点头、跑步或跳起等)。人脸检测可以检测出用户的面部表情,该用户可以为被拍摄的目标人物(后置摄像头获取),也可以为手持终端的用户(前置摄像头获取)。根据面部表情或动作能够确定调整参数。调整参数可以为按照预设调节单位增加或减少当前的动画样例的幅度。进而能够由用户更加精确的调节动画样例。
本公开实施例公开的动画处理方法,能够生成具备传参接口的模型单元的动画样例,当用户触发增强现实时,获取增强现实模型的外部交互参数,使用外部交互参数驱动模型单元的动画样例。相对于目前用户无法控制预先设置的模型变化动画,易用性差。本公开实施例能够根据外部交互参数驱动模型单元的动画样例,实现根据用户操作对模型动画进行调整,提高易用性。
实施例二
图2为本公开实施例二提供的动画处理装置的结构示意图,本实施例可适用于增强现实中播放增强现实模型动画的情况,该方法可以由实现增强现实的设备来执行,该设备可以为智能手机、平板电脑等,该装置包括:动画样例获取模块210、外部交互参数获取模块220和驱动模块230。其中:
动画样例获取模块210,用于获取模型单元的动画样例;
外部交互参数获取模块220,用于获取增强现实模型的外部交互参数,增强现实模型由多个模型单元组成;
驱动模块230,用于输出增强现实模型,根据外部交互参数在输出的增强现实模型中驱动模型单元的动画样例。
进一步的,动画样例获取模块210用于:
获取模型单元的第一动画样例,第一动画样例表示在模型单元的中心点沿预设坐标轴旋转模型单元的动画;
获取模型单元的第二动画样例,第二动画样例表示模型单元在预设坐标轴上跳动的动画。
进一步的,还包括模型单元属性设置模块,用于:
设置模型单元的属性信息,属性信息包括顶点坐标、中心点坐标、旋转启动参数或跳动启动参数中的一种或多种,旋转启动参数表示是否允许驱动第一动画样例,跳动启动参数表示是否允许驱动第二动画样例。
进一步的,动画样例获取模块210用于:
获取模型单元的第三动画样例,第三动画样例表示模型单元的表面纹理或颜色进行周期性变化。
进一步的,外部交互参数获取模块220用于:
根据下述任意一种方式确定第一动画样例中的预设坐标轴:根据用户在终端屏幕中输入的滑动轨迹的滑动方向确定预设坐标轴;或者,根据增强现实模型映射到的拍摄物与终端所呈拍摄方向确定预设坐标轴;或者,根据终端的摄像头的移动方向确定预设坐标轴;
根据目标音频的节拍、重拍或音乐强度确定第二动画样例中模型单元在预设坐标轴上跳动的跳动幅度;
根据柏林噪声算法处理第三动画样例中模型单元的表面图案。
进一步的,还包括调整模块,用于根据骨骼检测或人脸检测确定调整参数,调整参数用于控制第一动画样例、第二动画样例或第三动画样例的驱动程度;
根据调整参数对输出的增强现实模型中模型单元进行调整。
进一步的,模型单元为立方体单元;增强现实模型为建筑模型;建筑物模型由多个立方体单元组成。
本公开实施例公开的动画处理装置,动画样例获取模块210生成具备传参接口的模型单元的动画样例,当用户触发增强现实时,外部交互参数获取模块220获取增强现实模型的外部交互参数,驱动模块230使用外部交互参数驱动模型单元的动画样例。相对于目前用户无法控制预先设置的模型变化动画,易用性差。本公开实施例能够根据外部交互参数驱动模型单元的动画样例,实现根据用户操作对模型动画进行调整,提高易用性。
本发明实施例所提供的动画处理装置可执行本发明任意实施例所提供的动画处理方法,具备执行方法相应的功能模块和有益效果。
实施例三
下面参考图3,其示出了适于用来实现本公开实施例三的电子设备800的结构示意图。 本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理,personal digital assistant)、PAD(平板电脑,portable android device)、PMP(便携式多媒体播放器,personal multimedia player)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV(电视,television)、台式计算机等等的固定终端。图3示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图3所示,电子设备800可以包括处理装置(例如中央处理器、图形处理器等)801,其可以根据存储在只读存储器(read-only memory,ROM)802中的程序或者从存储装置808加载到随机访问存储器(random access memory,RAM)803中的程序而执行各种适当的动作和处理。在RAM 803中,还存储有电子设备800操作所需的各种程序和数据。处理装置801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(input/output,I/O)接口805也连接至总线804。
通常,以下装置可以连接至I/O接口805:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置806;包括例如液晶显示器(liquid crystal display,LCD)、扬声器、振动器等的输出装置807;包括例如磁带、硬盘等的存储装置808;以及通信装置809。通信装置809可以允许电子设备800与其他设备进行无线或有线通信以交换数据。虽然图3示出了具有各种装置的电子设备800,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置809从网络上被下载和安装,或者从存储装置808被安装,或者从ROM 802被安装。在该计算机程序被处理装置801执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(electrical programmable ROM,EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(compact disc ROM,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合 适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频,radio frequency)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取至少两个网际协议地址;向节点评价设备发送包括所述至少两个网际协议地址的节点评价请求,其中,所述节点评价设备从所述至少两个网际协议地址中,选取网际协议地址并返回;接收所述节点评价设备返回的网际协议地址;其中,所获取的网际协议地址指示内容分发网络中的边缘节点。
或者,上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:接收包括至少两个网际协议地址的节点评价请求;从所述至少两个网际协议地址中,选取网际协议地址;返回选取出的网际协议地址;其中,接收到的网际协议地址指示内容分发网络中的边缘节点。
本公开还提供了一种计算机程序,该计算机程序使得计算机执行上述实施例所提供的动画处理方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(local area network,LAN)或广域网(wide area network,WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (18)

  1. 一种动画处理方法,其特征在于,应用于着色器,包括:
    获取模型单元的动画样例;
    获取增强现实模型的外部交互参数,所述增强现实模型由多个所述模型单元组成;
    输出所述增强现实模型,根据所述外部交互参数在输出的所述增强现实模型中驱动所述模型单元的动画样例。
  2. 根据权利要求1所述的方法,其特征在于,所述获取模型单元的动画样例,包括:
    获取模型单元的第一动画样例,所述第一动画样例表示在所述模型单元的中心点沿预设坐标轴旋转所述模型单元的动画;
    获取模型单元的第二动画样例,所述第二动画样例表示所述模型单元在预设坐标轴上跳动的动画。
  3. 根据权利要求2所述的方法,其特征在于,在输出所述增强现实模型之前,还包括:
    设置模型单元的属性信息,所述属性信息包括顶点坐标、中心点坐标、旋转启动参数或跳动启动参数中的一种或多种,所述旋转启动参数表示是否允许驱动所述第一动画样例,所述跳动启动参数表示是否允许驱动所述第二动画样例。
  4. 根据权利要求3所述的方法,其特征在于,所述获取模型单元的动画样例,包括:
    获取模型单元的第三动画样例,所述第三动画样例表示所述模型单元的表面纹理或颜色进行周期性变化。
  5. 根据权利要求4所述的方法,其特征在于,所述获取增强现实模型的外部交互参数,包括:
    根据下述任意一种方式确定第一动画样例中的预设坐标轴:根据用户在终端屏幕中输入的滑动轨迹的滑动方向确定所述预设坐标轴;或者,根据所述增强现实模型映射到的拍摄物与终端所呈拍摄方向确定所述预设坐标轴;或者,根据终端的摄像头的移动方向确定所述预设坐标轴;
    根据目标音频的节拍、重拍或音乐强度确定第二动画样例中模型单元在预设坐标轴上跳动的跳动幅度;
    根据柏林噪声算法处理第三动画样例中模型单元的表面图案。
  6. 根据权利要求5所述的方法,其特征在于,在根据所述外部交互参数在输出的所述增强现实模型中驱动所述模型单元的动画样例之后,还包括:
    根据骨骼检测或人脸检测确定调整参数,所述调整参数用于控制所述第一动画样例、所述第二动画样例或所述第三动画样例的驱动程度;
    根据所述调整参数对输出的增强现实模型中模型单元进行调整。
  7. 根据权利要求1-6中任一项所述的方法,其特征在于,所述模型单元为立方体单元;所述增强现实模型为建筑模型;所述建筑物模型由多个所述立方体单元组成。
  8. 一种动画生成装置,其特征在于,应用于着色器,包括:
    动画样例获取模块,用于获取模型单元的动画样例;
    外部交互参数获取模块,用于获取增强现实模型的外部交互参数,所述增强现实模型由多个所述模型单元组成;
    驱动模块,用于输出所述增强现实模型,根据所述外部交互参数在输出的所述增强现实模型中驱动所述模型单元的动画样例。
  9. 根据权利要求8所述的动画生成装置,其特征在于,所述动画样例获取模块用于:
    获取模型单元的第一动画样例,所述第一动画样例表示在所述模型单元的中心点沿预设坐标轴旋转所述模型单元的动画;
    获取模型单元的第二动画样例,所述第二动画样例表示所述模型单元在预设坐标轴上跳动的动画。
  10. 根据权利要求9所述的动画生成装置,其特征在于,所述动画生成装置还包括模型单元属性设置模块,用于:
    设置模型单元的属性信息,所述属性信息包括顶点坐标、中心点坐标、旋转启动参数或跳动启动参数中的一种或多种,所述旋转启动参数表示是否允许驱动所述第一动画样例,所述跳动启动参数表示是否允许驱动所述第二动画样例。
  11. 根据权利要求10所述的动画生成装置,其特征在于,所述动画样例获取模块用于:
    获取模型单元的第三动画样例,所述第三动画样例表示所述模型单元的表面纹理或颜色进行周期性变化。
  12. 根据权利要求11所述的动画生成装置,其特征在于,所述外部交互参数获取模块用于:
    根据下述任意一种方式确定第一动画样例中的预设坐标轴:根据用户在终端屏幕中输入的滑动轨迹的滑动方向确定所述预设坐标轴;或者,根据所述增强现实模型映射到的拍摄物与终端所呈拍摄方向确定所述预设坐标轴;或者,根据终端的摄像头的移动方向确定 所述预设坐标轴;
    根据目标音频的节拍、重拍或音乐强度确定第二动画样例中模型单元在预设坐标轴上跳动的跳动幅度;
    根据柏林噪声算法处理第三动画样例中模型单元的表面图案。
  13. 根据权利要求12所述的动画生成装置,其特征在于,所述动画生成装置还包括:
    调整模块,用于根据骨骼检测或人脸检测确定调整参数,所述调整参数用于控制所述第一动画样例、所述第二动画样例或所述第三动画样例的驱动程度;
    根据所述调整参数对输出的增强现实模型中模型单元进行调整。
  14. 根据权利要求8-13中任一项所述的动画生成装置,其特征在于,所述模型单元为立方体单元;所述增强现实模型为建筑模型;所述建筑物模型由多个所述立方体单元组成。
  15. 一种电子设备,其特征在于,所述电子设备包括:
    一个或多个处理器;
    存储装置,用于存储一个或多个程序,
    当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现根据权利要求1-7中任一项所述的动画处理方法。
  16. 一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机执行时,使得所述计算机实现权利要求1-7中任一项所述的动画处理方法。
  17. 一种计算机程序产品,其特征在于,包括计算机程序指令,所述计算机程序指令被计算机执行时,使得所述计算机实现权利要求1-7中任一项所述的动画处理方法。
  18. 一种计算机程序,其特征在于,所述计算机程序被计算机执行时,使得所述计算机实现权利要求1-7中任一项所述的动画处理方法。
PCT/CN2021/104074 2020-07-16 2021-07-01 动画处理方法、装置、电子设备及存储介质 Ceased WO2022012349A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US18/005,547 US12417574B2 (en) 2020-07-16 2021-07-01 Animation processing method and apparatus, electronic device and storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010688598.3A CN111862273B (zh) 2020-07-16 2020-07-16 动画处理方法、装置、电子设备及存储介质
CN202010688598.3 2020-07-16

Publications (1)

Publication Number Publication Date
WO2022012349A1 true WO2022012349A1 (zh) 2022-01-20

Family

ID=72983042

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/104074 Ceased WO2022012349A1 (zh) 2020-07-16 2021-07-01 动画处理方法、装置、电子设备及存储介质

Country Status (3)

Country Link
US (1) US12417574B2 (zh)
CN (1) CN111862273B (zh)
WO (1) WO2022012349A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111862273B (zh) * 2020-07-16 2024-10-25 北京字节跳动网络技术有限公司 动画处理方法、装置、电子设备及存储介质
CN113920226B (zh) * 2021-09-30 2024-11-22 北京有竹居网络技术有限公司 用户交互方法、装置、存储介质及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107506548A (zh) * 2017-08-22 2017-12-22 清华大学 一种面向信息物理融合的建筑信息模型扩展方法
CN107728792A (zh) * 2017-11-17 2018-02-23 浙江大学 一种基于手势识别的增强现实三维绘图系统及绘图方法
CN108803876A (zh) * 2018-06-08 2018-11-13 华北水利水电大学 基于增强现实的水利工程展示交互方法及系统
US20190122442A1 (en) * 2015-08-20 2019-04-25 Microsoft Technology Licensing, Llc Augmented Reality
CN110827376A (zh) * 2018-08-09 2020-02-21 北京微播视界科技有限公司 增强现实多平面模型动画交互方法、装置、设备及存储介质
CN111862273A (zh) * 2020-07-16 2020-10-30 北京字节跳动网络技术有限公司 动画处理方法、装置、电子设备及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8274516B2 (en) * 2008-08-04 2012-09-25 Microsoft Corporation GPU scene composition and animation
US10685430B2 (en) * 2017-05-10 2020-06-16 Babylon VR Inc. System and methods for generating an optimized 3D model
US10424100B2 (en) * 2017-11-21 2019-09-24 Microsoft Technology Licensing, Llc Animating three-dimensional models using preset combinations of animation features
WO2021181280A1 (en) * 2020-03-10 2021-09-16 Purple Tambourine Limited Barometric sensing of arm position in a pointing controller system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190122442A1 (en) * 2015-08-20 2019-04-25 Microsoft Technology Licensing, Llc Augmented Reality
CN107506548A (zh) * 2017-08-22 2017-12-22 清华大学 一种面向信息物理融合的建筑信息模型扩展方法
CN107728792A (zh) * 2017-11-17 2018-02-23 浙江大学 一种基于手势识别的增强现实三维绘图系统及绘图方法
CN108803876A (zh) * 2018-06-08 2018-11-13 华北水利水电大学 基于增强现实的水利工程展示交互方法及系统
CN110827376A (zh) * 2018-08-09 2020-02-21 北京微播视界科技有限公司 增强现实多平面模型动画交互方法、装置、设备及存储介质
CN111862273A (zh) * 2020-07-16 2020-10-30 北京字节跳动网络技术有限公司 动画处理方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN111862273B (zh) 2024-10-25
US20230267664A1 (en) 2023-08-24
US12417574B2 (en) 2025-09-16
CN111862273A (zh) 2020-10-30

Similar Documents

Publication Publication Date Title
JP7422876B2 (ja) 拡張現実に基づいた表示方法及び装置、並びに記憶媒体
US11587280B2 (en) Augmented reality-based display method and device, and storage medium
WO2023179346A1 (zh) 特效图像处理方法、装置、电子设备及存储介质
JP7674462B2 (ja) 拡張現実の画像処理方法、装置、電子機器及び記憶媒体
CN112672185B (zh) 基于增强现实的显示方法、装置、设备及存储介质
CN103119628A (zh) 利用运动特性的显示器上三维用户界面效果
CN110058685A (zh) 虚拟对象的显示方法、装置、电子设备和计算机可读存储介质
WO2022170958A1 (zh) 基于增强现实的显示方法、设备、存储介质及程序产品
WO2020248900A1 (zh) 全景视频的处理方法、装置及存储介质
WO2022088928A1 (zh) 弹性对象的渲染方法、装置、设备及存储介质
WO2023121569A2 (zh) 粒子特效渲染方法、装置、设备及存储介质
WO2023138504A1 (zh) 图像渲染方法、装置、电子设备及存储介质
WO2023151524A1 (zh) 图像显示方法、装置、电子设备及存储介质
CN114049403B (zh) 一种多角度三维人脸重建方法、装置及存储介质
WO2023211364A2 (zh) 图像处理方法、装置、电子设备及存储介质
WO2022012349A1 (zh) 动画处理方法、装置、电子设备及存储介质
CN114494658A (zh) 特效展示方法、装置、设备、存储介质和程序产品
EP4071725A1 (en) Augmented reality-based display method and device, storage medium, and program product
WO2024088144A1 (zh) 增强现实画面的处理方法、装置、电子设备及存储介质
CN115734001A (zh) 特效显示方法、装置、电子设备及存储介质
RU2801917C1 (ru) Способ и устройство для отображения изображений на основе дополненной реальности и носитель для хранения информации
US20250196001A1 (en) Socially rich player engagement techniques for computer gameplay
US20260027474A1 (en) Unsupervised Extraction of Shared Group Correspondences in Video Game for Highlighting User-Generated Content in Game
WO2024107117A1 (zh) 图像处理方法、装置、设备及存储介质
WO2020147598A1 (zh) 模型动作方法、装置、带屏音箱、电子设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21842144

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 08.05.2023)

122 Ep: pct application non-entry in european phase

Ref document number: 21842144

Country of ref document: EP

Kind code of ref document: A1

WWG Wipo information: grant in national office

Ref document number: 18005547

Country of ref document: US