WO2023216646A1 - 三维虚拟模型的驱动处理方法、装置、设备和存储介质 - Google Patents
三维虚拟模型的驱动处理方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- WO2023216646A1 WO2023216646A1 PCT/CN2023/071961 CN2023071961W WO2023216646A1 WO 2023216646 A1 WO2023216646 A1 WO 2023216646A1 CN 2023071961 W CN2023071961 W CN 2023071961W WO 2023216646 A1 WO2023216646 A1 WO 2023216646A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- rotation matrix
- bones
- bone
- dimensional virtual
- virtual model
- Prior art date
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 24
- 210000000988 bone and bone Anatomy 0.000 claims abstract description 362
- 239000011159 matrix material Substances 0.000 claims abstract description 181
- 238000004364 calculation method Methods 0.000 claims abstract description 35
- 238000000034 method Methods 0.000 claims abstract description 28
- 238000004422 calculation algorithm Methods 0.000 claims description 33
- 238000012545 processing Methods 0.000 claims description 16
- 238000001514 detection method Methods 0.000 claims description 15
- 230000009466 transformation Effects 0.000 claims description 9
- 238000009795 derivation Methods 0.000 claims description 6
- 230000035515 penetration Effects 0.000 claims description 4
- 238000004891 communication Methods 0.000 claims description 3
- 230000008859 change Effects 0.000 abstract description 3
- 230000002452 interceptive effect Effects 0.000 description 50
- 238000010586 diagram Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000003997 social interaction Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 210000000784 arm bone Anatomy 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 210000002310 elbow joint Anatomy 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 210000004394 hip joint Anatomy 0.000 description 2
- 210000000629 knee joint Anatomy 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 210000000707 wrist Anatomy 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 210000002805 bone matrix Anatomy 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005034 decoration Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 210000002411 hand bone Anatomy 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
Definitions
- the present invention relates to the technical field of virtual model processing, and in particular to a drive processing method, device, equipment and storage medium for a three-dimensional virtual model.
- Embodiments of the present invention provide a driving processing method, device, equipment and storage medium for a three-dimensional virtual model to generate a corresponding target three-dimensional virtual model according to the user's input image in a virtual interactive game scene, thereby improving the user's game interactive experience.
- embodiments of the present invention provide a driving processing method for a three-dimensional virtual model.
- the method includes:
- the initial three-dimensional virtual model is driven to perform posture changes according to the third rotation matrix corresponding to each of the multiple bones, so as to obtain a target three-dimensional virtual model corresponding to the target object.
- inventions of the present invention provide a drive processing device for a three-dimensional virtual model.
- the device includes:
- the acquisition module is used to obtain the corresponding coordinate values of the skeleton key points in the three-dimensional coordinate system of multiple skeletal key points of the target object in the input image;
- a matrix determination module configured to determine the first rotation matrix of multiple bones of the target object based on the corresponding coordinate values of the multiple bone key points, wherein there is a bone topology between the multiple bones. Connection relationship; according to the bone topological connection relationship and the first rotation matrix, determine the second rotation matrix corresponding to each of the multiple bones; perform redirection calculation on the second rotation matrix corresponding to each of the multiple bones, Obtain the third rotation matrix corresponding to each of the multiple bones;
- the model generation module is configured to drive the initial three-dimensional virtual model to perform posture changes according to the third rotation matrix corresponding to each of the plurality of bones, so as to obtain a target three-dimensional virtual model corresponding to the target object.
- embodiments of the present invention provide another driving processing method for a three-dimensional virtual model, which method includes:
- the corresponding skeletal key point coordinate values of the user's multiple skeletal key points in the user image in the three-dimensional coordinate system are obtained in the three-dimensional coordinate system; according to the multiple skeletal key points
- the coordinate values of the corresponding bone key points determine the first rotation matrix of the user's multiple bones, wherein there is a bone topological connection relationship between the multiple bones; according to the bone topology connection relationship and the first a rotation matrix to determine a second rotation matrix corresponding to each of the multiple bones; perform redirection calculation on the second rotation matrix corresponding to each of the multiple bones to obtain a third rotation matrix corresponding to each of the multiple bones; and Drive the initial three-dimensional virtual model to perform posture changes according to the third rotation matrix corresponding to each of the multiple bones, so as to obtain the target three-dimensional virtual model corresponding to the user;
- an embodiment of the present invention provides another device for driving and processing a three-dimensional virtual model.
- the device includes:
- Image acquisition unit used to acquire user images
- a quality detection unit used to detect whether the image quality of the user image meets the preset quality standard
- a driving processing unit configured to obtain the coordinate values of the skeleton key points corresponding to the user's multiple skeleton key points in the three-dimensional coordinate system in the user image if it is determined that the image quality meets the preset quality standard; according to the The coordinate values of the bone key points corresponding to the plurality of bone key points determine the first rotation matrix of the user's multiple bones, wherein there is a bone topological connection relationship between the multiple bones; according to the bone topological connection The relationship between the first rotation matrix and the second rotation matrix is determined to determine the second rotation matrix corresponding to the multiple bones; perform redirection calculation on the second rotation matrix corresponding to the multiple bones to obtain the corresponding second rotation matrix of the multiple bones.
- a display unit is used to display the target three-dimensional virtual model.
- embodiments of the present invention provide an electronic device, including: a memory, a processor, and a communication interface; wherein executable code is stored on the memory, and when the executable code is executed by the processor,
- the processor can at least implement the driving processing method of the three-dimensional virtual model as described in the first aspect.
- embodiments of the present invention provide a non-transitory machine-readable storage medium.
- the non-transitory machine-readable storage medium stores executable code.
- the executable code is processed by a processor of an electronic device, When executed, the processor can at least implement the driving processing method of the three-dimensional virtual model as described in the first aspect.
- the determination is made based on the corresponding skeletal key point coordinate values of the multiple skeletal key points.
- the first rotation matrix of multiple bones of the target object determine the second rotation matrix corresponding to each of the multiple bones according to the bone topological connection relationship of the multiple bones and the first rotation matrix; determine the second rotation matrix corresponding to each of the multiple bones Reorientation calculation is performed to obtain the third rotation matrix corresponding to each of the multiple bones; the initial three-dimensional virtual model is driven to perform posture changes according to the third rotation matrix corresponding to the multiple bones to obtain the target three-dimensional virtual model corresponding to the target object.
- the point coordinate value determines the first rotation matrix of the multiple bones of the character; then based on the bone topological connection relationship of the multiple bones and the first rotation matrix, determines the second rotation matrix corresponding to each of the multiple bones; after that, posture redirection is used
- the algorithm performs redirection calculations on the second rotation matrices corresponding to the multiple bones to obtain the third rotation matrices corresponding to the multiple bones, and drives the initial three-dimensional virtual model to perform posture changes based on the third rotation matrices corresponding to the multiple bones.
- Figure 1 is a flow chart of a three-dimensional virtual model driving processing method provided by an embodiment of the present invention
- Figure 2 is a schematic diagram of the process of driving a three-dimensional virtual model provided by an embodiment of the present invention
- Figure 3 is a schematic diagram of a fourth rotation matrix provided by an embodiment of the present invention.
- Figure 4 is a schematic diagram of a fifth rotation matrix provided by an embodiment of the present invention.
- Figure 5 is a flow chart of another three-dimensional virtual model driving processing method provided by an embodiment of the present invention.
- Figure 6 is a schematic structural diagram of a three-dimensional virtual model drive processing device provided by an embodiment of the present invention.
- Figure 7 is a schematic structural diagram of another drive processing device for a three-dimensional virtual model provided by an embodiment of the present invention.
- FIG. 8 is a schematic structural diagram of an electronic device according to an embodiment of the present invention.
- Model-crossing phenomenon refers to the phenomenon of mutual penetration and superposition between objects or characters in a 3D game due to incorrect collision volume settings. For example, the hair of a 3D character model passes through the arm.
- Page View refers to the number of page views or clicks on a website
- UV Unique Visitor
- Collision detection is a computational problem that detects the intersection of two or more objects. Collision detection is a classic problem in computational geometry with applications in various computing fields, mainly in computer graphics, computer games, computer simulations, robotics, and computational physics. Collision detection algorithms can be divided into operations on 2D and 3D objects.
- Convex Hull is a concept in computational geometry (graphics). According to the outline points of the bone, the Convex Hull function is used to convert them into the coordinates of the outline points of the convex hull, thereby drawing the convex hull of the bone.
- Pose Retarget a mapping of source pose bones to target pose bones.
- Bone position derivation algorithm refers to first determining the position information of the end bone, and reversely deriving the position information of the N-level parent bone on the bone inheritance chain based on the position information of the end bone, thereby determining the entire bone. chain algorithm.
- the driving processing method of the three-dimensional virtual model provided by the embodiment of the present invention can be executed by an electronic device.
- the electronic device can be a server or a user terminal such as a PC.
- the server can be a physical server in the cloud. or virtual server (virtual machine).
- Figure 1 is a flow chart of a three-dimensional virtual model driving processing method provided by an embodiment of the present invention. As shown in Figure 1, the method includes the following steps:
- the above-mentioned input image can be a photo input by the user, such as the user's selfie, image photo, portrait photo, etc., or can also be used by other users to create three-dimensional virtual characters controlled by them in the three-dimensional virtual game scene. Imagery photos.
- the above-mentioned target object may be a character, animal, etc. with a skeletal structure.
- multiple skeletal key points can correspond to key parts of the human body such as knee joints, hip joints, elbow joints, wrists, navel, head, and feet.
- the three-dimensional coordinate system is formed by adding the Z axis according to the right-hand rule based on the two-dimensional coordinate system.
- the three-dimensional coordinate system in the embodiment of the present invention specifically refers to the global coordinate system, which is the benchmark used to describe the positions and directions of all objects in the game scene, and is also called the world coordinate system. Objects created in the game scene determine their respective positions based on the coordinate origin (0,0,0) in the global coordinate system.
- the three-dimensional coordinate system can also be a screen coordinate system.
- the Z axis in the screen coordinate system is measured in the world unit of the scene camera in the game scene.
- a posture estimation algorithm may be used to perform posture estimation calculation on the target object to determine the corresponding coordinate values of the key points of the bones in the three-dimensional coordinate system. That is, after obtaining the user input or the input image captured in real time, the pose estimation algorithm can be used to perform pose estimation calculation on the skeletal key points of the target object in the input image to calculate the coordinate values of the skeletal key points corresponding to multiple skeletal key points ( x,y,z).
- the above-mentioned first rotation matrix of multiple bones can be understood as a global rotation matrix, and multiple bones can form a bone topological connection relationship, that is, different bones presented by multiple bones can be displayed.
- Length and different bone topology structures i.e., different number of nodes, and their graph connection relationship, i.e., parent-child node relationship).
- the global rotation matrix of multiple bones is calculated based on the coordinate values of multiple bone key points.
- the global rotation matrix of multiple bones is calculated based on the bone topology of multiple bones. The connection relationship and the above-mentioned global rotation matrix determine the corresponding local rotation matrices of multiple bones.
- a posture redirection algorithm is used to calculate the second rotation matrix corresponding to each of the multiple bones. Perform the reorientation calculation to obtain the third rotation matrix corresponding to each of the multiple bones, that is, the local rotation matrix after the reorientation calculation. Finally, the initial three-dimensional virtual model is driven to perform posture changes according to the third rotation matrix corresponding to each of the multiple bones to obtain the target three-dimensional virtual model corresponding to the target object, thereby realizing the drive transformation of the initial three-dimensional virtual model in the virtual interactive game. It is a target three-dimensional virtual model that is consistent with the posture of the person in the input image.
- the initial three-dimensional virtual model is the three-dimensional virtual model in the initial state in the virtual interactive game.
- This initial state is the default display before the user sets the three-dimensional virtual image according to the picture he input. For example, it can be the standing state with a "big" font.
- the target three-dimensional virtual model drives the transformation of the initial three-dimensional virtual model according to the posture or posture of the character in the user's input image, and finally obtains a three-dimensional virtual model that is consistent with the posture of the character in the input image.
- the bone topology of the three-dimensional virtual model in different virtual interactive games is different. Therefore, according to the display or interactive needs of the virtual interactive game, the bone topological connection relationship between multiple bones is predetermined to facilitate the generation of the target.
- the second rotation matrix corresponding to each of the multiple bones is determined based on the predetermined bone topological connection relationship and the first rotation matrix generated in real time.
- the initial three-dimensional virtual model in the initial state in the virtual interactive game is also generated in advance according to different virtual interactive games. Therefore, the target three-dimensional virtual model obtained by subsequently driving the initial three-dimensional model can be fully adapted to the virtual interactive game. .
- the independently developed rendering engine corresponding to different virtual interactive games can be adapted, and the interaction of using the user's input photo to generate the corresponding target three-dimensional virtual model can be automatically realized. experience.
- the point coordinate value determines the first rotation matrix of the multiple bones of the character; then based on the bone topological connection relationship of the multiple bones and the first rotation matrix, determines the second rotation matrix corresponding to each of the multiple bones; after that, posture redirection is used
- the algorithm performs redirection calculations on the second rotation matrices corresponding to the multiple bones to obtain the third rotation matrices corresponding to the multiple bones, and drives the initial three-dimensional virtual model to perform posture changes based on the third rotation matrices corresponding to the multiple bones.
- the method provided by the embodiment of the present invention is illustrated below with reference to the schematic diagram of the driving process of a three-dimensional virtual model shown in Figure 2.
- the The character can be a male.
- the character is in a natural and relaxed sitting posture.
- a posture estimation algorithm is used to perform posture estimation calculation on the character's skeletal key points to calculate the skeletal key point coordinate values (x) corresponding to multiple skeletal key points. ,y,z).
- the three-dimensional virtual model and the three-dimensional background in the virtual game scene need to be implemented through modeling. Therefore, the mold-crossing phenomenon may inevitably exist.
- the target object can be determined based on the coordinate values of the bone key points corresponding to the multiple bone key points.
- each bone cylinder can be regarded as a convex hull (Convex Hull), that is, according to the outline points of the bone, the Convex Hull function is used to convert them into the coordinates of the outline points of the convex hull, thereby drawing the convex hull of the bone.
- this step is to better perform collision detection processing on multiple bones.
- the collision detection algorithm is used to detect multiple bones and construct corresponding surrounding cylinders. It can be determined whether there is cross-mold phenomenon between multiple bones. If it exists, the mold-crossing part where the cross-mold phenomenon exists can be connected according to the bone topology. The relationship is to eliminate the collision of the mold-crossing phenomenon step by step, and finally until there is no mold-crossing phenomenon between multiple bones, the subsequent model generation operation is performed, that is, based on the coordinate values of the bone key points corresponding to the multiple bone key points, the model is determined.
- the bone topology of the multiple bones is also determined by the following method Connection relationship: Obtain the connection relationship between multiple bone key points and multiple bones, as well as the parent-child node relationship between multiple bones; determine the bone topology connection relationship of multiple bones based on the connection relationship and parent-child node relationship.
- the second rotation matrix corresponding to each of the multiple bones is determined based on the bone topological connection relationship of the multiple bones and the first rotation matrix. Specifically, the following method can be used to implement:
- the arm drives the hand using forward dynamics, and the hand drives the arm.
- the arm is inverse dynamics. If the hand bones are known, the process of solving the position of the upper arm bones and the lower arm bones can be understood as a process of solving using the bone position derivation algorithm IK in inverse dynamics.
- this solution process must first determine the parent-child node relationship between multiple bones based on the bone topological connection relationship. For example, starting from the highest node of the bone hierarchy, first determine any target bone among multiple bones, and then start solving layer by layer. First, the global rotation matrix of multiple bones is calculated based on the corresponding bone key point coordinate values of the multiple bones. Starting from the target bone, the local rotation matrix corresponding to the current target bone is calculated, and then the multiple bones are determined based on the topological connection relationship of the bones. The parent-child node relationship between the root bones is calculated layer by layer to obtain the local rotation matrices corresponding to all target bones required to drive the initial three-dimensional virtual model.
- using a bone position derivation algorithm to determine the local rotation matrices corresponding to multiple bones is very important for improving the animation quality of the target three-dimensional virtual model and showing the animation details of the target three-dimensional virtual model.
- redirection calculation is performed on the second rotation matrices corresponding to the multiple bones to obtain the third rotation matrix corresponding to the multiple bones, which can be implemented in the following optional manner:
- the multiple bones of the initial three-dimensional virtual model are in the initial state; that is, the fourth rotation matrix and the fifth rotation matrix are both rotation matrices in the initial state.
- J 10 , J 11 , J 12 , J 13 , J 14 , J 15 , and J 16 are respectively different skeletal key points of the skeletal structure of the three-dimensional virtual model in the skeletal coordinate system space.
- the pattern of one of the fourth rotation matrices is shown.
- the fourth rotation matrix is a local rotation matrix of the bone key points corresponding to the bone structure of the three-dimensional virtual model in the bone coordinate system space.
- J 00 , J 01 , J 02 , J 03 , J 04 , J 05 , J 06 , J 07 , and J 08 are respectively the skeletal structure of the target object in the initial state obtained by attitude estimation in the skeletal coordinate system
- Different skeletal key points in the space illustrates the pattern of one of the fifth rotation matrices.
- the fifth rotation matrix is the pose estimation to obtain the skeletal structure of the target object in the initial state, corresponding to the skeletal key points in the skeletal coordinate system space. local rotation matrix.
- the number of key points of the bone structure of the three-dimensional virtual model in the bone coordinate system space is related to the bone structure of the target object in the initial state in the bone coordinate system space obtained by posture estimation. Compared with the number of key points, the two are not equal. Therefore, in order to migrate and map the skeletal structure of the target object to the initial three-dimensional virtual model to be driven, a posture redirection algorithm needs to be used to map the current state of the target object.
- the second rotation matrix corresponding to the multiple bones is used for reorientation calculation.
- the fourth rotation matrix of the bone key points of the initial three-dimensional virtual model in the initial state is first calculated; then, the fifth rotation matrix of the bone key points of the skeleton structure in the initial state of the pose estimation is calculated, by calculating Obtain the transformation matrix between the fourth rotation matrix and the fifth rotation matrix; finally, adopt the attitude reconstruction
- the orientation algorithm performs redirection calculation on the second rotation matrix based on the transformation matrix to obtain the third rotation matrix corresponding to each of the multiple bones, and then the bone structure of the target object can be migrated and mapped to the initial three-dimensional virtual model to be driven.
- the provided IK algorithm and Pose Retarget algorithm for the skeletal structure of the three-dimensional virtual model provide an automated implementation method for generating a three-dimensional virtual image driven by the user's input photo; providing a virtual interactive game scene
- the promotion of interactive gameplay in the game provides strong support and increases the number of unique visitors UV and page views PV of users in the virtual interactive game scene.
- FIG. 5 is a flow chart of another three-dimensional virtual model driving processing method provided by an embodiment of the present invention. As shown in Figure 5, the method includes the following steps:
- the image quality meets the preset quality standard, obtain the corresponding bone key point coordinate values of the user's multiple bone key points in the three-dimensional coordinate system in the user image; according to the corresponding bone key points of the multiple bone key points The coordinate values determine the first rotation matrix of the user's multiple bones, where there is a bone topological connection relationship between the multiple bones; based on the bone topological connection relationship and the first rotation matrix, determine the second rotation matrix corresponding to each of the multiple bones.
- the method provided by the embodiment of the present invention can be applied in some virtual interactive game scenes and online social activity scenes similar to Virtual Life.
- the user can appear in the online social activity in the form of an avatar. purpose in the scene.
- users are provided with a virtual interactive space, in which users can freely change their avatars, clothing and decorations to achieve their own social or sharing purposes.
- the above user images may be collected or uploaded by users.
- the photos uploaded by the user such as the user's selfies, image photos, portrait photos, etc.
- multiple skeletal key points can correspond to key parts of the human body such as knee joints, hip joints, elbow joints, wrists, navel, head, feet, etc.
- a posture estimation algorithm may be used to perform posture estimation calculation on the user to determine the corresponding coordinate values of the key points of the bones in the three-dimensional coordinate system. That is, after obtaining the user image uploaded by the user or collected immediately by the user, the pose estimation algorithm can be used to perform pose estimation calculation on the user's skeletal key points in the user image to calculate the coordinates of the skeletal key points corresponding to multiple skeletal key points. value (x,y,z).
- the above-mentioned first rotation matrix of multiple bones can be understood as a global rotation matrix, and multiple bones can form a bone topological connection relationship, that is, different bones presented by multiple bones can be displayed.
- Length and different bone topology structures i.e., different number of nodes, and their graph connection relationship, i.e., parent-child node relationship).
- the global rotation matrix of multiple bones is calculated by calculating the coordinate values of multiple bone key points. Then, based on the bone topological connection relationship of multiple bones and the above-mentioned global rotation matrix, the corresponding local rotation matrices of multiple bones are determined.
- a posture redirection algorithm is used to calculate the second rotation matrix corresponding to each of the multiple bones. Perform the reorientation calculation to obtain the third rotation matrix corresponding to each of the multiple bones, that is, the local rotation matrix after the reorientation calculation. Finally, the initial three-dimensional virtual model is driven to perform posture changes according to the third rotation matrix corresponding to each of the multiple bones to obtain the target three-dimensional virtual model corresponding to the user, and then the initial three-dimensional virtual model in the virtual interactive game is driven and converted into A three-dimensional virtual model of the target consistent with the pose of the character in the user's image. After obtaining the target three-dimensional virtual model, the target three-dimensional virtual model is rendered and displayed.
- the initial three-dimensional virtual model is the three-dimensional virtual model in the initial state in the virtual interactive game.
- the initial state is displayed by default before the user sets the three-dimensional virtual image according to the picture he input. For example, it can be "big" The standing state of the glyph.
- the target three-dimensional virtual model drives the conversion of the initial three-dimensional virtual model according to the posture or posture of the character in the user's image, and finally obtains a three-dimensional virtual model that is consistent with the posture of the character in the user's image.
- the bone topological connection relationship between multiple bones must be determined in advance according to the display or interaction requirements of the virtual interactive game, so as to facilitate the generation of the target three-dimensional virtual model.
- the predetermined bone topological connection relationship and the first rotation matrix generated in real time determine the second rotation matrix corresponding to each of the multiple bones.
- the initial three-dimensional virtual model in the initial state in the virtual interactive game is also generated in advance according to different virtual interactive games. Therefore, the target three-dimensional virtual model obtained by subsequently driving the initial three-dimensional model can be fully adapted to the virtual interactive game. .
- the independently developed rendering engine corresponding to different virtual interactive games can be adapted, and the interaction of using the user's input photo to generate the corresponding target three-dimensional virtual model can be automatically realized. experience.
- Orientation calculation is performed to obtain the third rotation matrix corresponding to each of the multiple bones, and the initial three-dimensional virtual model is driven to perform posture changes according to the third rotation matrix corresponding to the multiple bones to obtain the target three-dimensional virtual model corresponding to the user. It can generate the corresponding target three-dimensional virtual model based on the user's image, improve the user's interactive experience in the virtual interactive game scene, and then increase the frequency and duration of the user's online virtual social interaction, which has a broad application space.
- the drive processing device of a three-dimensional virtual model will be described in detail below. Those skilled in the art can understand that these devices can be constructed using commercially available hardware components and configured through the steps taught in this solution.
- Figure 6 is a schematic structural diagram of a three-dimensional virtual model drive processing device provided by an embodiment of the present invention. As shown in Figure 6, the device includes: an acquisition module 11, a matrix determination module 12, and a model generation module 13.
- the acquisition module 11 is used to obtain the corresponding coordinate values of the skeleton key points in the three-dimensional coordinate system of multiple skeleton key points of the target object in the input image.
- the matrix determination module 12 is used to determine the first rotation matrix of multiple bones of the target object based on the coordinate values of the multiple bone key points corresponding to each of the multiple bone key points, wherein there is a bone topological connection relationship between the multiple bones;
- the bone topological connection relationship of the root bone and the first rotation matrix determine the second rotation matrix corresponding to the multiple bones; perform redirection calculation on the second rotation matrix corresponding to the multiple bones to obtain the third corresponding rotation matrix of the multiple bones. rotation matrix.
- the model generation module 13 is configured to drive the initial three-dimensional virtual model to perform posture changes according to the third rotation matrix corresponding to each of the multiple bones, so as to obtain a target three-dimensional virtual model corresponding to the target object.
- the matrix determination module 12 includes: a first determination unit, used to determine the parent-child node relationship between multiple bones according to the bone topological connection relationship; a second determination unit, used to use the bone position derivation algorithm to determine the parent-child node relationship between the bones according to the first rotation matrix. , based on the parent-child node relationship, start from the target bone and calculate the second rotation matrix corresponding to each bone node by node to obtain the second rotation matrix corresponding to multiple bones, where the target bone is any one of the multiple bones.
- the matrix determination module 12 also includes: an acquisition unit, used to acquire the fourth rotation matrix corresponding to the multiple bones of the initial three-dimensional virtual model, and the fifth rotation corresponding to the multiple bones of the target object in the initial state.
- a matrix in which the multiple bones of the initial three-dimensional virtual model are in an initial state; the first computing unit is used to calculate the transformation matrix between the fourth rotation matrix and the fifth rotation matrix; the second computing unit is used to adopt posture reorientation
- the algorithm performs redirection calculation on the second rotation matrix based on the transformation matrix to obtain the third rotation matrix corresponding to each of the multiple bones.
- the acquisition module 11 is also used to perform pose estimation calculation on the target object using a pose estimation algorithm to determine the corresponding coordinate values of the skeletal key points of the multiple skeletal key points in the three-dimensional coordinate system.
- the above device also includes: a construction module for constructing multiple bones according to the bone topological connection relationship. Construct corresponding surrounding cylinders; the detection module is used to detect multiple bones using a collision detection algorithm to construct corresponding surrounding cylinders to determine whether there is mold penetration between multiple bones; the collision cancellation module is used to determine if If there is a mold-crossing phenomenon between multiple bones, the mold-crossing phenomenon will be eliminated based on the topological connection relationship of the bones until there is no mold-crossing phenomenon between multiple bones.
- a construction module for constructing multiple bones according to the bone topological connection relationship. Construct corresponding surrounding cylinders
- the detection module is used to detect multiple bones using a collision detection algorithm to construct corresponding surrounding cylinders to determine whether there is mold penetration between multiple bones
- the collision cancellation module is used to determine if If there is a mold-crossing phenomenon between multiple bones, the mold-crossing phenomenon will be eliminated based on the topological connection relationship of the bones until there is no mold-crossing phenomenon between multiple bones.
- the above device also includes: a relationship acquisition module, used to obtain the connection relationship between multiple bone key points and multiple bones, as well as the parent-child node relationship between multiple bones; a relationship determination module, used to obtain the connection relationship based on the connection relationship and parent-child node relationship to determine the bone topological connection relationship of multiple bones.
- a relationship acquisition module used to obtain the connection relationship between multiple bone key points and multiple bones, as well as the parent-child node relationship between multiple bones
- a relationship determination module used to obtain the connection relationship based on the connection relationship and parent-child node relationship to determine the bone topological connection relationship of multiple bones.
- Figure 7 is a schematic structural diagram of another drive processing device for a three-dimensional virtual model provided by an embodiment of the present invention. As shown in Figure 7, the device includes: an image acquisition unit 21, a quality detection unit 22, a drive processing unit 23, and a display unit. twenty four.
- Image acquisition unit 21 used to acquire user images
- the quality detection unit 22 is used to detect whether the image quality of the user image meets the preset quality standard
- the drive processing unit 23 is configured to, if it is determined that the image quality meets the preset quality standard, obtain the coordinate values of the skeleton key points corresponding to the user's multiple skeleton key points in the three-dimensional coordinate system in the user image; according to the respective skeleton key points of the user's image, The corresponding bone key point coordinate values determine the first rotation matrix of the user's multiple bones, in which there is a bone topological connection relationship between the multiple bones; based on the bone topological connection relationship and the first rotation matrix, determine the corresponding corresponding to the multiple bones.
- the model performs posture changes to obtain the target three-dimensional virtual model corresponding to the user;
- the display unit 24 is used to display the target three-dimensional virtual model.
- the structure of the drive processing device of the three-dimensional virtual model shown in Figures 6 and 7 can be implemented as an electronic device.
- the electronic device may include: a processor 31 , a memory 32 , and a communication interface 33 .
- the memory 32 stores executable code.
- the processor 31 can at least implement the driving processing method of the three-dimensional virtual model as provided in the previous embodiment.
- embodiments of the present invention provide a non-transitory machine-readable storage medium.
- the non-transitory machine-readable storage medium stores executable code.
- the executable code is executed by a processor of an electronic device, , so that the processor can at least implement the driving processing method of the three-dimensional virtual model as provided in the previous embodiment.
- each embodiment can be implemented by adding the necessary general hardware platform, or of course, can also be implemented by combining hardware and software.
- the above technical solution can be embodied in the form of a computer product in nature or in part that contributes to the existing technology.
- the present invention can adopt one or more computer-usable programs included therein.
- Program code is in the form of a computer program product implemented on a computer usable storage medium (including but not limited to disk storage, CD-ROM, optical storage, etc.).
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请提供一种三维虚拟模型的驱动处理方法、装置、设备和存储介质,该方法包括:获取输入图像中目标对象的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值;根据多个骨骼关键点各自对应的骨骼关键点坐标值,确定目标对象的多根骨骼的第一旋转矩阵,其中,多根骨骼之间存在骨骼拓扑连接关系;根据骨骼拓扑连接关系和第一旋转矩阵,确定多根骨骼各自对应的第二旋转矩阵;对多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到多根骨骼各自对应的第三旋转矩阵;根据多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与目标对象对应的目标三维虚拟模型。以根据用户的输入图像生成对应的目标三维虚拟模型。
Description
本申请要求于2022年05月13日提交中国专利局、申请号为202210524792.7、申请名称为“三维虚拟模型的驱动处理方法、装置、设备和存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本发明涉及虚拟模型处理技术领域,尤其涉及一种三维虚拟模型的驱动处理方法、装置、设备和存储介质。
随着人工智能技术的不断发展进步,以及三维虚拟形象的相关技术发展迅速,越来越多的用户希望以虚拟形象的形式出现在网络社交活动场景(例如,虚拟互动游戏)中,而非使用自己的真人照片。
面对上述应用需求,如何在一个虚拟互动游戏场景中,根据用户输入的真人照片生成对应的一种或多种不同的三维虚拟形象效果,提升用户对该虚拟互动游戏的互动体验,是目前尚未解决的技术问题。
发明内容
本发明实施例提供一种三维虚拟模型的驱动处理方法、装置、设备和存储介质,以在虚拟互动游戏场景中根据用户的输入图像生成对应的目标三维虚拟模型,提升用户的游戏互动体验。
第一方面,本发明实施例提供一种三维虚拟模型的驱动处理方法,所述方法包括:
获取输入图像中目标对象的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值;
根据所述多个骨骼关键点各自对应的骨骼关键点坐标值,确定所述目标对象的多根骨骼的第一旋转矩阵,其中,所述多根骨骼之间存在骨骼拓扑连接关系;
根据所述骨骼拓扑连接关系和所述第一旋转矩阵,确定所述多根骨骼各自对应的第二旋转矩阵;
对所述多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到所述多根骨骼各自对应的第三旋转矩阵;
根据所述多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与所述目标对象对应的目标三维虚拟模型。
第二方面,本发明实施例提供一种三维虚拟模型的驱动处理装置,所述装置包括:
获取模块,用于获取输入图像中目标对象的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值;
矩阵确定模块,用于根据所述多个骨骼关键点各自对应的骨骼关键点坐标值,确定所述目标对象的多根骨骼的第一旋转矩阵,其中,所述多根骨骼之间存在骨骼拓扑连接关系;根据所述骨骼拓扑连接关系和所述第一旋转矩阵,确定所述多根骨骼各自对应的第二旋转矩阵;对所述多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到所述多根骨骼各自对应的第三旋转矩阵;
模型生成模块,用于根据所述多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与所述目标对象对应的目标三维虚拟模型。
第三方面,本发明实施例提供另一种三维虚拟模型的驱动处理方法,所述方法包括:
获取用户图像;
检测所述用户图像的图像质量是否符合预设质量标准;
若确定所述图像质量符合所述预设质量标准,则获取所述用户图像中用户的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值;根据所述多个骨骼关键点各自对应的骨骼关键点坐标值,确定所述用户的多根骨骼的第一旋转矩阵,其中,所述多根骨骼之间存在骨骼拓扑连接关系;根据所述骨骼拓扑连接关系和所述第一旋转矩阵,确定所述多根骨骼各自对应的第二旋转矩阵;对所述多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到所述多根骨骼各自对应的第三旋转矩阵;以及根据所述多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与所述用户对应的目标三维虚拟模型;
展示所述目标三维虚拟模型。
第四方面,本发明实施例提供另一种三维虚拟模型的驱动处理装置,所述装置包括:
图像获取单元,用于获取用户图像;
质量检测单元,用于检测所述用户图像的图像质量是否符合预设质量标准;
驱动处理单元,用于若确定所述图像质量符合所述预设质量标准,则获取所述用户图像中用户的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值;根据所述多个骨骼关键点各自对应的骨骼关键点坐标值,确定所述用户的多根骨骼的第一旋转矩阵,其中,所述多根骨骼之间存在骨骼拓扑连接关系;根据所述骨骼拓扑连接关系和所述第一旋转矩阵,确定所述多根骨骼各自对应的第二旋转矩阵;对所述多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到所述多根骨骼各自对应的第三旋
转矩阵;以及根据所述多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与所述用户对应的目标三维虚拟模型;
展示单元,用于展示所述目标三维虚拟模型。
第五方面,本发明实施例提供一种电子设备,包括:存储器、处理器、通信接口;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器至少可以实现如第一方面所述的三维虚拟模型的驱动处理方法。
第六方面,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以实现如第一方面所述的三维虚拟模型的驱动处理方法。
本发明实施例中,在获取输入图像中目标对象的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值之后,根据多个骨骼关键点各自对应的骨骼关键点坐标值,确定目标对象的多根骨骼的第一旋转矩阵;根据多根骨骼的骨骼拓扑连接关系和第一旋转矩阵,确定多根骨骼各自对应的第二旋转矩阵;对多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到多根骨骼各自对应的第三旋转矩阵;根据多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与目标对象对应的目标三维虚拟模型。
为了更好的构建用户在虚拟互动游戏场景中的互动玩法,增加用户参与该虚拟互动游戏的频率,提升用户粘性。本发明实施例中,根据用户拍摄的输入图像中目标对象(比如人物)的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值,根据多个骨骼关键点各自对应的骨骼关键点坐标值,确定人物的多根骨骼的第一旋转矩阵;再根据多根骨骼的骨骼拓扑连接关系和第一旋转矩阵,确定多根骨骼各自对应的第二旋转矩阵;之后,采用姿态重定向算法对多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到多根骨骼各自对应的第三旋转矩阵,根据多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与目标对象对应的目标三维虚拟模型。以实现根据用户的输入图像生成对应的目标三维虚拟模型,提升用户在虚拟互动游戏场景中的互动体验,进而增加用户进行网络虚拟社交的频率与时长,具有广阔的应用空间。
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种三维虚拟模型的驱动处理方法的流程图;
图2为本发明实施例提供的一种三维虚拟模型的驱动处理的过程示意图;
图3为本发明实施例提供的一种第四旋转矩阵的示意图;
图4为本发明实施例提供的一种第五旋转矩阵的示意图;
图5为本发明实施例提供的另一种三维虚拟模型的驱动处理方法的流程图;
图6为本发明实施例提供的一种三维虚拟模型的驱动处理装置的结构示意图;
图7为本发明实施例提供的另一种三维虚拟模型的驱动处理装置的结构示意图;
图8为本发明实施例提供的一种电子设备的结构示意图。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图对本发明的一些实施方式作详细说明。在各实施例之间不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
先对本发明实施例中涉及到的术语或概念进行解释说明:
穿模现象:是指3D游戏中内的物体间或者人物间,因为碰撞体积设定失误导致相互穿透,叠加的现象,例如,3D人物模型的头发穿过手臂。
页面访问量(Page View,PV):是指网站的页面浏览量或者点击量;
独立访客量(Unique Visitor,UV):访问网站的一台电脑客户端为一个访客。根据IP地址来区分访客数,在一段时间内重复访问,也算是一个独立访客。
碰撞检测算法(Collison Detect):碰撞检测是检测两个或多个物体相交的计算问题。碰撞检测是计算几何学的一个经典问题,在各种计算领域都有应用,主要是在计算机图形学、计算机游戏、计算机模拟、机器人和计算物理学中。碰撞检测算法可以分为对2D和3D对象的操作。
凸包(Convex Hull)是一个计算几何(图形学)中的概念。根据骨骼的轮廓点,通过Convex Hull函数转化成凸包的轮廓点坐标,从而画出该骨骼的凸包。
姿态重定向算法(Pose Retarget):源姿态骨骼向目标姿态骨骼的一种映射。
骨骼位置推导算法(Inverse Kinematics,IK):是指首先确定末端骨骼的位置信息,根据末端骨骼的位置信息反向推导出该骨骼继承链上N级的父骨骼的位置信息,从而确定整条骨骼链的算法。
本发明实施例提供的三维虚拟模型的驱动处理方法可以由一电子设备来执行,实际应用中,该电子设备可以是服务器,也可以是诸如PC机等用户终端,该服务器可以是云端的物理服务器或虚拟服务器(虚拟机)。
图1为本发明实施例提供的一种三维虚拟模型的驱动处理方法的流程图,如图1所示,该方法包括如下步骤:
101、获取输入图像中目标对象的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值;
102、根据多个骨骼关键点各自对应的骨骼关键点坐标值,确定目标对象的多根骨骼的第一旋转矩阵,其中,多根骨骼之间存在骨骼拓扑连接关系。
103、根据骨骼拓扑连接关系和第一旋转矩阵,确定多根骨骼各自对应的第二旋转矩阵。
104、对多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到多根骨骼各自对应的第三旋转矩阵。
105、根据多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与目标对象对应的目标三维虚拟模型。
可选地,上述输入图像可以为用户输入的拍摄照片,例如,用户的自拍照,形象照,写真照等,也可以为其他用户用于制作其在三维虚拟游戏场景中所控制的三维虚拟人物形象的照片。
可选地,上述目标对象可以为具有骨骼构造的人物、动物等。以目标对象为人物为例,多个骨骼关键点可以对应于膝关节、髋关节、肘关节、手腕、肚脐、头部、脚部等人体关键部位。
可选地,三维坐标系即是在二维坐标系的基础上根据右手定则增加Z轴而形成的。本发明实施例中的三维坐标系具体是指全局坐标系,是用于描述游戏场景内所有物***置和方向的基准,也称为世界坐标系。在游戏场景中创建的物体都是以全局坐标系中的坐标原点(0,0,0)来确定各自的位置。该三维坐标系也可以为屏幕坐标系,屏幕坐标系中的Z轴是以游戏场景中的场景相机的世界单位来衡量的。
可选地,可以但不限于采用姿态估计算法对目标对象进行姿态估计计算,以确定多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值。即在获取用户输入或者即时拍摄的输入图像之后,可以采用姿态估计算法对输入图像中的目标对象的骨骼关键点进行姿态估计计算,以计算得到多个骨骼关键点对应的骨骼关键点坐标值(x,y,z)。
可选地,上述多根骨骼的第一旋转矩阵,即可以理解为是一种全局旋转矩阵,并且多根骨骼是可以构成骨骼拓扑连接关系的,即可以展示出多根骨骼所呈现的不同骨骼长度与不同骨骼拓扑结构(即不同节点数量,以及它们的图连接关系,即父子节点关系)。
在多个骨骼关键点各自对应的骨骼关键点坐标值之后,为了可以得到与目标对象对应的目标三维虚拟模型,需要得到每根骨骼的局部旋转矩阵。首先,通过多个骨骼关键点坐标值计算得到多根骨骼的全局旋转矩阵,之后,再根据多根骨骼的骨骼拓扑
连接关系和上述全局旋转矩阵,确定多根骨骼各自对应的局部旋转矩阵。
由于一些类似虚拟人生的虚拟互动游戏场景中三维虚拟形象的骨骼专有性,根据虚拟互动游戏场景中的三维虚拟形象的骨骼结构,采用姿态重定向算法对多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到多根骨骼各自对应的第三旋转矩阵,即重定向计算后的局部旋转矩阵。最后,再根据多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与目标对象对应的目标三维虚拟模型,进而实现将虚拟互动游戏中的初始三维虚拟模型转驱动转化为与输入图像中的人物的姿态一致的目标三维虚拟模型。
初始三维虚拟模型即虚拟互动游戏中处于初始状态下的三维虚拟模型,该初始状态为用户未根据自己输入的图片设置三维虚拟形象之前,默认显示的,例如,可以为“大”字形的站立状态。目标三维虚拟模型即根据用户输入图像中的人物的姿态或姿势,驱动初始三维虚拟模型转化,最终得到的与输入图像中的人物的姿态一致的三维虚拟模型。
可以理解的是,不同的虚拟互动游戏中三维虚拟模型的骨骼拓扑结构不同,因此根据虚拟互动游戏的展示或者互动需求,预先确定多根骨骼之间存在的骨骼拓扑连接关系,以便于在生成目标三维虚拟模型时,根据该预先确定的骨骼拓扑连接关系和实时生成的第一旋转矩阵,确定多根骨骼各自对应的第二旋转矩阵。而且,虚拟互动游戏中处于初始状态下的初始三维虚拟模型也是预先根据不同的虚拟互动游戏对应生成的,因此,后续驱动该初始三维模型得到的目标三维虚拟模型可以与该虚拟互动游戏完全适配。进而,采用本发明实施例所提供的三维虚拟模型的驱动处理方法,可以适配不同的虚拟互动游戏对应自主研发的渲染引擎,可以自动化实现采用用户的输入照片生成对应的目标三维虚拟模型的互动体验。
为了更好的构建用户在虚拟互动游戏场景中的互动玩法,增加用户参与该虚拟互动游戏的频率,提升用户粘性。本发明实施例中,根据用户拍摄的输入图像中目标对象(比如人物)的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值,根据多个骨骼关键点各自对应的骨骼关键点坐标值,确定人物的多根骨骼的第一旋转矩阵;再根据多根骨骼的骨骼拓扑连接关系和第一旋转矩阵,确定多根骨骼各自对应的第二旋转矩阵;之后,采用姿态重定向算法对多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到多根骨骼各自对应的第三旋转矩阵,根据多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与目标对象对应的目标三维虚拟模型。以实现根据用户的输入图像生成对应的目标三维虚拟模型,提升用户在虚拟互动游戏场景中的互动体验,进而增加用户进行网络虚拟社交的频率与时长,具有广阔的应用空间。
为便于理解本发明实施例,如下参考图2所示的一种三维虚拟模型的驱动处理过程示意图,对本发明实施例所提供的方法进行举例说明,如图2所示,输入图像中的
人物可以是男性,该人物呈现为一个自然放松的坐姿状态,在采用姿态估计算法对该人物的骨骼关键点进行姿态估计计算,以计算得到多个骨骼关键点对应的骨骼关键点坐标值(x,y,z)。
一种可选的实施例,由于虚拟游戏场景内的三维虚拟模型和三维背景,都是需要通过建模来实现的。因此可能会不可避免的存在穿模现象,那么为避免这种穿模现象对后期生成的目标三维虚拟模型的影响,可以在根据多个骨骼关键点各自对应的骨骼关键点坐标值,确定目标对象的多根骨骼的第一旋转矩阵之前,首先检测该多根骨骼之间是否存在穿模现象,如果存在的话,预先对该穿模现象执行碰撞解除,具体可以采用如下方法实现:
根据骨骼拓扑连接关系为多根骨骼构建各自对应的包围圆柱体;采用碰撞检测算法检测多根骨骼构建各自对应的包围圆柱体,以确定多根骨骼之间是否存在穿模现象;若确定多根骨骼之间存在穿模现象,则基于骨骼拓扑连接关系对穿模现象进行碰撞解除,直至多根骨骼之间不存在穿模现象。
可选地,先为每根骨骼构建对应的包围圆柱体,即构建每根骨骼对应的圆柱体包围盒。为便于理解,可以将每根骨骼圆柱体看作是一个凸包(Convex Hull),即根据骨骼的轮廓点,通过Convex Hull函数转化成凸包的轮廓点坐标,从而画出该骨骼的凸包,这一步是为了更好地对多根骨骼执行碰撞检测处理。
之后,利用碰撞检测算法检测多根骨骼构建各自对应的包围圆柱体,可以确定多根骨骼之间是否存在穿模现象,若存在则可以针对存在该穿模现象的穿模部位,根据骨骼拓扑连接关系对穿模现象进行逐级的碰撞解除,最后直至多根骨骼之间不存在穿模现象,再执行后续的模型生成操作,即根据多个骨骼关键点各自对应的骨骼关键点坐标值,确定目标对象的多根骨骼的第一旋转矩阵。
根据上述描述可知,通过本发明实施例所设计的一种骨骼碰撞检测方法与对应的碰撞消除方法,可以避免后续生成的目标三维虚拟模型可能会出现的穿模现象。
作为一种可选地实施例,在根据多根骨骼的骨骼拓扑连接关系和第一旋转矩阵,确定多根骨骼各自对应的第二旋转矩阵之前,还通过如下方法先确定多根骨骼的骨骼拓扑连接关系:获取多个骨骼关键点与多根骨骼之间的连接关系,以及多根骨骼之间的父子节点关系;根据连接关系和父子节点关系,确定多根骨骼的骨骼拓扑连接关系。
在本发明实施例中,根据多根骨骼的骨骼拓扑连接关系和第一旋转矩阵,确定多根骨骼各自对应的第二旋转矩阵,具体可以采用如下方法实现:
根据骨骼拓扑连接关系确定多根骨骼之间的父子节点关系;采用骨骼位置推导算法根据第一旋转矩阵,基于父子节点关系从目标骨骼开始逐节点计算每根骨骼对应的第二旋转矩阵,以得到多根骨骼各自对应的第二旋转矩阵,其中,目标骨骼为多根骨骼中的任一个。
作为一种可选的实施例,以胳膊骨架为例,胳膊带动手是正向动力学,手带动胳
膊是逆向动力学,已知手部骨骼,来求解大臂骨骼位置、小臂骨骼位置的过程,就可以理解为是采用逆向动力学中的骨骼位置推导算法IK进行解算的过程。
具体地,这一解算过程首先要根据骨骼拓扑连接关系,先确定多根骨骼之间的父子节点关系。例如,从骨骼层级关系的最高层节点开始,先确定多根骨骼中的任一个目标骨骼,再开始逐层进行求解。首先,通过多根骨骼各自对应的骨骼关键点坐标值计算得到多根骨骼的全局旋转矩阵,从该目标骨骼开始,计算当前的目标骨骼对应的局部旋转矩阵,再根据骨骼拓扑连接关系确定的多根骨骼之间的父子节点关系逐层计算,得到驱动初始三维虚拟模型所需的全部的目标骨骼对应的局部旋转矩阵。
通过上述实施例,采用骨骼位置推导算法确定多根骨骼各自对应的局部旋转矩阵,对于提升目标三维虚拟模型的动画质量,展现目标三维虚拟模型的动画细节来说是很重要的。
在一种可选地实施例中,对多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到多根骨骼各自对应的第三旋转矩阵,可以采用如下可选方式实现:
获取初始三维虚拟模型的多根骨骼各自对应的第四旋转矩阵,以及目标对象在初始状态下的多根骨骼各自对应的第五旋转矩阵,计算第四旋转矩阵和第五旋转矩阵之间的转换矩阵;采用姿态重定向算法基于转换矩阵对第二旋转矩阵进行重定向计算,以得到多根骨骼各自对应的第三旋转矩阵。
在本发明实施例中,初始三维虚拟模型的多根骨骼处于初始状态;即第四旋转矩阵和第五旋转矩阵都是在初始状态下的旋转矩阵。
可选地,如图3所示,J10、J11、J12、J13、J14、J15、J16分别为三维虚拟模型的骨骼结构在骨骼坐标系空间中不同的骨骼关键点,如图3所示意出的其中一个第四旋转矩阵的样式,第四旋转矩阵是三维虚拟模型的骨骼结构在骨骼坐标系空间对应的骨骼关键点的局部旋转矩阵。如图4所示,J00、J01、J02、J03、J04、J05、J06、J07、J08分别为姿态估计得到目标对象在初始状态下的骨骼结构在骨骼坐标系空间中不同的骨骼关键点,如图4所示意出的其中一个第五旋转矩阵的样式,第五旋转矩阵是姿态估计得到目标对象在初始状态下的骨骼结构在骨骼坐标系空间对应骨骼关键点的局部旋转矩阵。
根据图3和图4可以看出,三维虚拟模型的骨骼结构在骨骼坐标系空间中的骨骼关键点的数量,与姿态估计得到目标对象在初始状态下的骨骼结构在骨骼坐标系空间中的骨骼关键点的数量相比较,二者是不相等的,因此,为了实现将目标对象的骨骼结构迁移和映射到要驱动的初始三维虚拟模型上,需要采用姿态重定向算法,对目标对象当前状态下的多根骨骼对应的第二旋转矩阵进行重定向计算。
具体而言,首先计算出初始状态下的初始三维虚拟模型的骨骼关键点的第四旋转矩阵;然后,计算出姿态估计的骨骼结构在初始状态下的骨骼关键点的第五旋转矩阵,通过计算得到第四旋转矩阵和第五旋转矩阵两者之间的转换矩阵;最后,采用姿态重
定向算法基于转换矩阵对第二旋转矩阵进行重定向计算,以得到多根骨骼各自对应的第三旋转矩阵,进而可以将目标对象的骨骼结构迁移和映射到要驱动的初始三维虚拟模型上。
通过本发明实施例,所提供的针对三维虚拟模型的骨骼结构的IK算法与Pose Retarget算法,给出了一种由用户的输入照片来驱动生成三维虚拟形象的自动化实现方式;为虚拟互动游戏场景中的互动玩法推广落地提供了强有力的支持,提升了虚拟互动游戏场景中用户的独立访客量UV和页面访问量PV。而且,便于用户在虚拟互动游戏场景这个虚拟空间中,自由更换虚拟形象,自由换装,以达到自由化的虚拟社交或分享目的,进而可以增加用户参与虚拟互动游戏的频率,提升用户粘性。
图5为本发明实施例提供的另一种三维虚拟模型的驱动处理方法的流程图,如图5所示,该方法包括如下步骤:
501、获取用户图像;
502、检测用户图像的图像质量是否符合预设质量标准;
503、若确定图像质量符合预设质量标准,则获取用户图像中用户的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值;根据多个骨骼关键点各自对应的骨骼关键点坐标值,确定用户的多根骨骼的第一旋转矩阵,其中,多根骨骼之间存在骨骼拓扑连接关系;根据骨骼拓扑连接关系和第一旋转矩阵,确定多根骨骼各自对应的第二旋转矩阵;对多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到多根骨骼各自对应的第三旋转矩阵;以及根据多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与用户对应的目标三维虚拟模型;
504、展示目标三维虚拟模型。
可选地,本发明实施例所提供的方法可以应用在一些类似虚拟人生的虚拟互动游戏场景、网络社交活动场景中,通过该方法实施例,可以实现用户以虚拟形象的形式出现在网络社交活动场景中的目的。例如,在一些虚拟人生应用程序中,为用户提供一个虚拟互动空间,在该虚拟互动空间中,用户可以自由更换虚拟形象,自由更换服饰和装饰,以达到自己的社交或分享目的。
可选地,上述用户图像可以为采集到的,也可以为用户上传的。例如,用户上传的拍摄照片,例如,用户的自拍照,形象照,写真照等,也可以为其他用户用于制作其在三维虚拟游戏场景中所控制的三维虚拟人物形象的照片。
可选地,多个骨骼关键点可以对应于膝关节、髋关节、肘关节、手腕、肚脐、头部、脚部等人体关键部位。
可选地,可以但不限于采用姿态估计算法对用户进行姿态估计计算,以确定多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值。即在获取用户上传或者采集到用户即时拍摄的用户图像之后,可以采用姿态估计算法对用户图像中的用户的骨骼关键点进行姿态估计计算,以计算得到多个骨骼关键点对应的骨骼关键点坐标值
(x,y,z)。
可选地,上述多根骨骼的第一旋转矩阵,即可以理解为是一种全局旋转矩阵,并且多根骨骼是可以构成骨骼拓扑连接关系的,即可以展示出多根骨骼所呈现的不同骨骼长度与不同骨骼拓扑结构(即不同节点数量,以及它们的图连接关系,即父子节点关系)。
在多个骨骼关键点各自对应的骨骼关键点坐标值之后,为了可以得到与用户对应的目标三维虚拟模型,需要得到每根骨骼的局部旋转矩阵。首先,通过多个骨骼关键点坐标值计算得到多根骨骼的全局旋转矩阵,之后,再根据多根骨骼的骨骼拓扑连接关系和上述全局旋转矩阵,确定多根骨骼各自对应的局部旋转矩阵。
由于一些类似虚拟人生的虚拟互动游戏场景中三维虚拟形象的骨骼专有性,根据虚拟互动游戏场景中的三维虚拟形象的骨骼结构,采用姿态重定向算法对多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到多根骨骼各自对应的第三旋转矩阵,即重定向计算后的局部旋转矩阵。最后,再根据多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与用户对应的目标三维虚拟模型,进而实现将虚拟互动游戏中的初始三维虚拟模型转驱动转化为与用户图像中的人物的姿态一致的目标三维虚拟模型。并在得到该目标三维虚拟模型之后,渲染并展示目标三维虚拟模型。
可选地,初始三维虚拟模型即虚拟互动游戏中处于初始状态下的三维虚拟模型,该初始状态为用户未根据自己输入的图片设置三维虚拟形象之前,默认显示的,例如,可以为“大”字形的站立状态。目标三维虚拟模型即根据用户图像中的人物的姿态或姿势,驱动初始三维虚拟模型转化,最终得到的与用户图像中的人物的姿态一致的三维虚拟模型。
由于不同的虚拟互动游戏中三维虚拟模型的骨骼拓扑结构不同,因此根据虚拟互动游戏的展示或者互动需求,预先确定多根骨骼之间存在的骨骼拓扑连接关系,以便于在生成目标三维虚拟模型时,根据该预先确定的骨骼拓扑连接关系和实时生成的第一旋转矩阵,确定多根骨骼各自对应的第二旋转矩阵。而且,虚拟互动游戏中处于初始状态下的初始三维虚拟模型也是预先根据不同的虚拟互动游戏对应生成的,因此,后续驱动该初始三维模型得到的目标三维虚拟模型可以与该虚拟互动游戏完全适配。进而,采用本发明实施例所提供的三维虚拟模型的驱动处理方法,可以适配不同的虚拟互动游戏对应自主研发的渲染引擎,可以自动化实现采用用户的输入照片生成对应的目标三维虚拟模型的互动体验。
为了更好的构建用户在虚拟互动游戏场景中的互动玩法,提升用户在虚拟互动游戏场景中的互动体验,进而增加用户进行网络虚拟社交的频率与时长。本发明实施例,根据用户图像中用户的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值,根据多个骨骼关键点各自对应的骨骼关键点坐标值,确定用户的多根骨骼的第一旋转
矩阵;再根据多根骨骼的骨骼拓扑连接关系和第一旋转矩阵,确定多根骨骼各自对应的第二旋转矩阵;之后,采用姿态重定向算法对多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到多根骨骼各自对应的第三旋转矩阵,根据多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与用户对应的目标三维虚拟模型。以实现根据用户图像生成对应的目标三维虚拟模型,提升用户在虚拟互动游戏场景中的互动体验,进而增加用户进行网络虚拟社交的频率与时长,具有广阔的应用空间。
以下将详细描述本发明的一个或多个实施例的三维虚拟模型的驱动处理装置。本领域技术人员可以理解,这些装置均可使用市售的硬件组件通过本方案所教导的步骤进行配置来构成。
图6为本发明实施例提供的一种三维虚拟模型的驱动处理装置的结构示意图,如图6所示,该装置包括:获取模块11、矩阵确定模块12、模型生成模块13。
获取模块11,用于获取输入图像中目标对象的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值。
矩阵确定模块12,用于根据多个骨骼关键点各自对应的骨骼关键点坐标值,确定目标对象的多根骨骼的第一旋转矩阵,其中,多根骨骼之间存在骨骼拓扑连接关系;根据多根骨骼的骨骼拓扑连接关系和第一旋转矩阵,确定多根骨骼各自对应的第二旋转矩阵;对多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到多根骨骼各自对应的第三旋转矩阵。
模型生成模块13,用于根据多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与目标对象对应的目标三维虚拟模型。
可选地,矩阵确定模块12包括:第一确定单元,用于根据骨骼拓扑连接关系确定多根骨骼之间的父子节点关系;第二确定单元,用于采用骨骼位置推导算法根据第一旋转矩阵,基于父子节点关系从目标骨骼开始逐节点计算每根骨骼对应的第二旋转矩阵,以得到多根骨骼各自对应的第二旋转矩阵,其中,目标骨骼为多根骨骼中的任一个。
可选地,矩阵确定模块12还包括:获取单元,用于获取初始三维虚拟模型的多根骨骼各自对应的第四旋转矩阵,以及目标对象在初始状态下的多根骨骼各自对应的第五旋转矩阵,其中,初始三维虚拟模型的多根骨骼处于初始状态;第一计算单元,用于计算第四旋转矩阵和第五旋转矩阵之间的转换矩阵;第二计算单元,用于采用姿态重定向算法基于转换矩阵对第二旋转矩阵进行重定向计算,以得到多根骨骼各自对应的第三旋转矩阵。
可选地,获取模块11还用于采用姿态估计算法对目标对象进行姿态估计计算,以确定多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值。
可选地,上述装置还包括:构建模块,用于根据骨骼拓扑连接关系为多根骨骼构
建各自对应的包围圆柱体;检测模块,用于采用碰撞检测算法检测多根骨骼构建各自对应的包围圆柱体,以确定多根骨骼之间是否存在穿模现象;碰撞解除模块,用于若确定多根骨骼之间存在穿模现象,则基于骨骼拓扑连接关系对穿模现象进行碰撞解除,直至多根骨骼之间不存在穿模现象。
可选地,上述装置还包括:关系获取模块,用于获取多个骨骼关键点与多根骨骼之间的连接关系,以及多根骨骼之间的父子节点关系;关系确定模块,用于根据连接关系和父子节点关系,确定多根骨骼的骨骼拓扑连接关系。
图7为本发明实施例提供的另一种三维虚拟模型的驱动处理装置的结构示意图,如图7所示,该装置包括:图像获取单元21、质量检测单元22、驱动处理单元23、展示单元24。
图像获取单元21,用于获取用户图像;
质量检测单元22,用于检测用户图像的图像质量是否符合预设质量标准;
驱动处理单元23,用于若确定图像质量符合预设质量标准,则获取用户图像中用户的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值;根据多个骨骼关键点各自对应的骨骼关键点坐标值,确定用户的多根骨骼的第一旋转矩阵,其中,多根骨骼之间存在骨骼拓扑连接关系;根据骨骼拓扑连接关系和第一旋转矩阵,确定多根骨骼各自对应的第二旋转矩阵;对多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到多根骨骼各自对应的第三旋转矩阵;以及根据多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与用户对应的目标三维虚拟模型;
展示单元24,用于展示目标三维虚拟模型。
在一个可能的设计中,上述图6和图7所示三维虚拟模型的驱动处理装置的结构可实现为一电子设备。如图8所示,该电子设备可以包括:处理器31、存储器32、通信接口33。其中,存储器32上存储有可执行代码,当所述可执行代码被处理器31执行时,使处理器31至少可以实现如前述实施例中提供的三维虚拟模型的驱动处理方法。
另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以实现如前述实施例中提供的三维虚拟模型的驱动处理方法。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的网元可以是或者也可以不是物理上分开的。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程
序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (11)
- 一种三维虚拟模型的驱动处理方法,其特征在于,包括:获取输入图像中目标对象的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值;根据所述多个骨骼关键点各自对应的骨骼关键点坐标值,确定所述目标对象的多根骨骼的第一旋转矩阵,其中,所述多根骨骼之间存在骨骼拓扑连接关系;根据所述骨骼拓扑连接关系和所述第一旋转矩阵,确定所述多根骨骼各自对应的第二旋转矩阵;对所述多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到所述多根骨骼各自对应的第三旋转矩阵;根据所述多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与所述目标对象对应的目标三维虚拟模型。
- 根据权利要求1所述的方法,其特征在于,所述根据所述骨骼拓扑连接关系和所述第一旋转矩阵,确定所述多根骨骼各自对应的第二旋转矩阵,包括:根据所述骨骼拓扑连接关系确定所述多根骨骼之间的父子节点关系;采用骨骼位置推导算法根据所述第一旋转矩阵,基于所述父子节点关系从目标骨骼开始逐节点计算每根骨骼对应的第二旋转矩阵,以得到所述多根骨骼各自对应的第二旋转矩阵,其中,所述目标骨骼为所述多根骨骼中的任一个。
- 根据权利要求1所述的方法,其特征在于,所述对所述多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到所述多根骨骼各自对应的第三旋转矩阵,包括:获取所述初始三维虚拟模型的多根骨骼各自对应的第四旋转矩阵,以及所述目标对象在初始状态下的多根骨骼各自对应的第五旋转矩阵,其中,所述初始三维虚拟模型的多根骨骼处于所述初始状态;计算所述第四旋转矩阵和所述第五旋转矩阵之间的转换矩阵;采用姿态重定向算法基于所述转换矩阵对所述第二旋转矩阵进行重定向计算,以得到所述多根骨骼各自对应的所述第三旋转矩阵。
- 根据权利要求1所述的方法,其特征在于,所述获取输入图像中目标对象的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值,包括:采用姿态估计算法对所述目标对象进行姿态估计计算,以确定所述多个骨骼关键点在所述三维坐标系中各自对应的所述骨骼关键点坐标值。
- 根据权利要求1所述的方法,其特征在于,在所述根据所述多个骨骼关键点各自对应的骨骼关键点坐标值,确定所述目标对象的多根骨骼的第一旋转矩阵之前,所述方法还包括:根据所述骨骼拓扑连接关系为所述多根骨骼构建各自对应的包围圆柱体;采用碰撞检测算法检测所述多根骨骼构建各自对应的包围圆柱体,以确定所述多 根骨骼之间是否存在穿模现象;若确定所述多根骨骼之间存在所述穿模现象,则基于所述骨骼拓扑连接关系对所述穿模现象进行碰撞解除,直至所述多根骨骼之间不存在所述穿模现象。
- 根据权利要求1所述的方法,其特征在于,在根据所述骨骼拓扑连接关系和所述第一旋转矩阵,确定所述多根骨骼各自对应的第二旋转矩阵之前,所述方法还包括:获取所述多个骨骼关键点与所述多根骨骼之间的连接关系,以及所述多根骨骼之间的父子节点关系;根据所述连接关系和所述父子节点关系,确定所述骨骼拓扑连接关系。
- 一种三维虚拟模型的驱动处理装置,其特征在于,包括:获取模块,用于获取输入图像中目标对象的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值;矩阵确定模块,用于根据所述多个骨骼关键点各自对应的骨骼关键点坐标值,确定所述目标对象的多根骨骼的第一旋转矩阵,其中,所述多根骨骼之间存在骨骼拓扑连接关系;根据所述骨骼拓扑连接关系和所述第一旋转矩阵,确定所述多根骨骼各自对应的第二旋转矩阵;对所述多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到所述多根骨骼各自对应的第三旋转矩阵;模型生成模块,用于根据所述多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与所述目标对象对应的目标三维虚拟模型。
- 一种三维虚拟模型的驱动处理方法,其特征在于,包括:获取用户图像;检测所述用户图像的图像质量是否符合预设质量标准;若确定所述图像质量符合所述预设质量标准,则获取所述用户图像中用户的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值;根据所述多个骨骼关键点各自对应的骨骼关键点坐标值,确定所述用户的多根骨骼的第一旋转矩阵,其中,所述多根骨骼之间存在骨骼拓扑连接关系;根据所述骨骼拓扑连接关系和所述第一旋转矩阵,确定所述多根骨骼各自对应的第二旋转矩阵;对所述多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到所述多根骨骼各自对应的第三旋转矩阵;以及根据所述多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与所述用户对应的目标三维虚拟模型;展示所述目标三维虚拟模型。
- 一种三维虚拟模型的驱动处理装置,其特征在于,包括:图像获取单元,用于获取用户图像;质量检测单元,用于检测所述用户图像的图像质量是否符合预设质量标准;驱动处理单元,用于若确定所述图像质量符合所述预设质量标准,则获取所述用户图像中用户的多个骨骼关键点在三维坐标系中各自对应的骨骼关键点坐标值;根据 所述多个骨骼关键点各自对应的骨骼关键点坐标值,确定所述用户的多根骨骼的第一旋转矩阵,其中,所述多根骨骼之间存在骨骼拓扑连接关系;根据所述骨骼拓扑连接关系和所述第一旋转矩阵,确定所述多根骨骼各自对应的第二旋转矩阵;对所述多根骨骼各自对应的第二旋转矩阵进行重定向计算,得到所述多根骨骼各自对应的第三旋转矩阵;以及根据所述多根骨骼各自对应的第三旋转矩阵驱动初始三维虚拟模型执行姿态变化,以得到与所述用户对应的目标三维虚拟模型;展示单元,用于展示所述目标三维虚拟模型。
- 一种电子设备,其特征在于,包括:存储器、处理器、通信接口;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求1至6中任一项所述的三维虚拟模型的驱动处理方法,或者权利要求8中所述的三维虚拟模型的驱动处理方法。
- 一种非暂时性机器可读存储介质,其特征在于,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1至6中任一项所述的三维虚拟模型的驱动处理方法,或者权利要求8中所述的三维虚拟模型的驱动处理方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210524792.7 | 2022-05-13 | ||
CN202210524792.7A CN115018959A (zh) | 2022-05-13 | 2022-05-13 | 三维虚拟模型的驱动处理方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023216646A1 true WO2023216646A1 (zh) | 2023-11-16 |
Family
ID=83069780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2023/071961 WO2023216646A1 (zh) | 2022-05-13 | 2023-01-12 | 三维虚拟模型的驱动处理方法、装置、设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115018959A (zh) |
WO (1) | WO2023216646A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115018959A (zh) * | 2022-05-13 | 2022-09-06 | 阿里巴巴(中国)有限公司 | 三维虚拟模型的驱动处理方法、装置、设备和存储介质 |
CN115564877A (zh) * | 2022-10-13 | 2023-01-03 | 美的集团(上海)有限公司 | 虚拟人的驱动方法、装置、存储介质和电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112381003A (zh) * | 2020-11-16 | 2021-02-19 | 网易(杭州)网络有限公司 | 动作捕捉方法、装置、设备及存储介质 |
CN112634419A (zh) * | 2020-12-31 | 2021-04-09 | 魔珐(上海)信息科技有限公司 | 一种运动重定向方法、装置、电子设备及存储介质 |
CN112819971A (zh) * | 2021-01-26 | 2021-05-18 | 北京百度网讯科技有限公司 | 虚拟形象的生成方法、装置、设备和介质 |
CN112862933A (zh) * | 2021-02-04 | 2021-05-28 | 北京百度网讯科技有限公司 | 用于优化模型的方法、装置、设备以及存储介质 |
WO2021105401A1 (en) * | 2019-11-28 | 2021-06-03 | Digital Orthopaedics | Method for modeling a bone |
CN115018959A (zh) * | 2022-05-13 | 2022-09-06 | 阿里巴巴(中国)有限公司 | 三维虚拟模型的驱动处理方法、装置、设备和存储介质 |
-
2022
- 2022-05-13 CN CN202210524792.7A patent/CN115018959A/zh active Pending
-
2023
- 2023-01-12 WO PCT/CN2023/071961 patent/WO2023216646A1/zh unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021105401A1 (en) * | 2019-11-28 | 2021-06-03 | Digital Orthopaedics | Method for modeling a bone |
CN112381003A (zh) * | 2020-11-16 | 2021-02-19 | 网易(杭州)网络有限公司 | 动作捕捉方法、装置、设备及存储介质 |
CN112634419A (zh) * | 2020-12-31 | 2021-04-09 | 魔珐(上海)信息科技有限公司 | 一种运动重定向方法、装置、电子设备及存储介质 |
CN112819971A (zh) * | 2021-01-26 | 2021-05-18 | 北京百度网讯科技有限公司 | 虚拟形象的生成方法、装置、设备和介质 |
CN112862933A (zh) * | 2021-02-04 | 2021-05-28 | 北京百度网讯科技有限公司 | 用于优化模型的方法、装置、设备以及存储介质 |
CN115018959A (zh) * | 2022-05-13 | 2022-09-06 | 阿里巴巴(中国)有限公司 | 三维虚拟模型的驱动处理方法、装置、设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115018959A (zh) | 2022-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2023216646A1 (zh) | 三维虚拟模型的驱动处理方法、装置、设备和存储介质 | |
Chen et al. | KinÊtre: animating the world with the human body | |
CN113012282B (zh) | 三维人体重建方法、装置、设备及存储介质 | |
US11514638B2 (en) | 3D asset generation from 2D images | |
EP3980974A1 (en) | Single image-based real-time body animation | |
US10713850B2 (en) | System for reconstructing three-dimensional (3D) human body model using depth data from single viewpoint | |
WO2021063271A1 (zh) | 人体模型重建方法、重建***及存储介质 | |
US10818078B2 (en) | Reconstruction and detection of occluded portions of 3D human body model using depth data from single viewpoint | |
CN112330805A (zh) | 人脸3d模型生成方法、装置、设备及可读存储介质 | |
CN115761117A (zh) | 一种基于star模型的三维人体重建方法及*** | |
CN115115752A (zh) | 虚拟服装的形变预测方法和装置、存储介质及电子设备 | |
CN115908664B (zh) | 人机交互的动画生成方法、装置、计算机设备、存储介质 | |
US20230298297A1 (en) | Layered clothing that conforms to an underlying body and/or clothing layer | |
CN110853131A (zh) | 一种用于行为识别的虚拟视频数据生成方法 | |
JP7251003B2 (ja) | 細かいしわを有する顔メッシュ変形 | |
CN114998514A (zh) | 一种虚拟角色的生成方法及设备 | |
CN113313796A (zh) | 场景生成方法、装置、计算机设备和存储介质 | |
Noh et al. | Shape refinement and rigging of raw-scanned 3D volume by a user-specified skeleton | |
CN117557699B (zh) | 动画数据生成方法、装置、计算机设备和存储介质 | |
Schmitz et al. | Interactive pose and shape editing with simple sketches from different viewing angles | |
US20240127539A1 (en) | Mechanical weight index maps for mesh rigging | |
Liu et al. | A Method of Touchable 3d Model Reconstruction based on Mixed Reality–A Case Study of Medical Training Applications | |
WO2023169023A1 (zh) | 表情模型的生成方法、装置、设备及介质 | |
CN116570921B (zh) | 虚拟对象的姿态控制方法、装置、计算机设备、存储介质 | |
CN117218279A (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: 23802423 Country of ref document: EP Kind code of ref document: A1 |