WO2020183962A1 - 情報処理装置、および情報処理方法、並びにプログラム - Google Patents

情報処理装置、および情報処理方法、並びにプログラム Download PDF

Info

Publication number
WO2020183962A1
WO2020183962A1 PCT/JP2020/003362 JP2020003362W WO2020183962A1 WO 2020183962 A1 WO2020183962 A1 WO 2020183962A1 JP 2020003362 W JP2020003362 W JP 2020003362W WO 2020183962 A1 WO2020183962 A1 WO 2020183962A1
Authority
WO
WIPO (PCT)
Prior art keywords
motion
model
bone structure
source
information processing
Prior art date
Application number
PCT/JP2020/003362
Other languages
English (en)
French (fr)
Inventor
アンキット シャラマ
Original Assignee
ソニー株式会社
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 ソニー株式会社 filed Critical ソニー株式会社
Publication of WO2020183962A1 publication Critical patent/WO2020183962A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings

Definitions

  • This disclosure relates to an information processing device, an information processing method, and a program. More specifically, an information processing device, an information processing system, which executes a motion transfer process for transferring the motion (attitude, movement) of one three-dimensional (3D) model (source model) to another model (target model). And about the program.
  • a motion transfer process for transferring the motion (attitude, movement) of one three-dimensional (3D) model (source model) to another model (target model).
  • Patent Document 1 Japanese Unexamined Patent Publication No. 2008-052726
  • source model the motion of one three-dimensional (3D) model
  • target model another model
  • motion the motion that reproduces. If there is minimal topology similarity between the two character parts of the source and the target, we disclose a configuration that allows motion transfer between them.
  • the user attaches a tag to each part of the source and the target, maps between the source and the target using the tag information, and transfers the motion.
  • motion can be transferred without defining the bone structure.
  • this method requires the user to determine which part of the source corresponds to which part of the target and associate the tags, which requires specialized knowledge.
  • the number of tags is small, there is a problem that accurate motion (posture, movement) cannot be transferred.
  • This disclosure has been made in view of the above-mentioned problems, for example, and even a user without a high degree of specialized knowledge can easily separate the motion of one three-dimensional (3D) model (source model). It provides an information processing device, an information processing method, and a program that enable motion transfer to be reproduced by transferring to the model (target model) of the above.
  • the first aspect of the disclosure is It has a data processing unit that executes motion transfer between 3D models.
  • the data processing unit The process of converting the bone structure S of the source model of the motion transfer source into the bone structure P, The process of converting the bone structure T of the target model to which the motion is transferred to the bone structure P, and It is in an information processing device that executes a motion transfer process of transferring the motion of a source model having a bone structure P to a target model having a bone structure P.
  • the second aspect of the present disclosure is It has a data processing unit that executes motion transfer between 3D models.
  • the data processing unit The motion parameter of the source model is converted into the motion parameter corresponding to the target model by using the motion parameter conversion function F, the conversion parameter is applied to the target model, and the motion of the source model has a bone structure different from that of the source model. It is in the information processing device that executes the motion transfer process to transfer to the target model.
  • the third aspect of the present disclosure is It is an information processing method executed in an information processing device.
  • the information processing device It has a data processing unit that executes motion transfer between 3D models.
  • the data processing unit The process of converting the bone structure S of the source model of the motion transfer source into the bone structure P, The process of converting the bone structure T of the target model to which the motion is transferred to the bone structure P, and It is an information processing method for executing a motion transfer process of transferring the motion of a source model having a bone structure P to a target model having a bone structure P.
  • the fourth aspect of the present disclosure is It is an information processing method executed in an information processing device.
  • the information processing device It has a data processing unit that executes motion transfer between 3D models.
  • the data processing unit The motion parameter of the source model is converted into the motion parameter corresponding to the target model by using the motion parameter conversion function F, the conversion parameter is applied to the target model, and the motion of the source model has a bone structure different from that of the source model. It is in the information processing method that executes the motion transfer process to transfer to the target model.
  • the fifth aspect of the present disclosure is A program that executes information processing in an information processing device.
  • the information processing device It has a data processing unit that executes motion transfer between 3D models.
  • the program, the data processing unit The process of converting the bone structure S of the source model of the motion transfer source into the bone structure P, The process of converting the bone structure T of the target model to which the motion is transferred to the bone structure P, and
  • the sixth aspect of the present disclosure is A program that executes information processing in an information processing device.
  • the information processing device It has a data processing unit that executes motion transfer between 3D models.
  • the motion parameter of the source model is converted into the motion parameter corresponding to the target model by using the motion parameter conversion function F, the conversion parameter is applied to the target model, and the motion of the source model has a bone structure different from that of the source model. It is in the program that executes the motion transfer process to transfer to the target model.
  • the program of the present disclosure is, for example, a program that can be provided by a storage medium or a communication medium that is provided in a computer-readable format to an information processing device or a computer system that can execute various program codes.
  • a program that can be provided by a storage medium or a communication medium that is provided in a computer-readable format to an information processing device or a computer system that can execute various program codes.
  • system is a logical set configuration of a plurality of devices, and the devices having each configuration are not limited to those in the same housing.
  • a device and a method that enable highly accurate motion transfer processing to be executed between source targets having different bone structures are realized. Specifically, for example, a process of converting the bone structure S of the source model of the motion transfer source into a bone structure P, a process of converting the bone structure T of the target model of the motion transfer destination into a bone structure P, and a bone.
  • the motion transfer process of transferring the motion of the source model having the structure P to the target model having the bone structure P is executed.
  • the data processing unit generates a source model instance in which the bone structure S of the source model of the motion transfer source is converted into the bone structure P and a target model instance in which the bone structure T of the target model of the motion transfer destination is converted into the bone structure P. , Execute motion transfer processing between the generated instances having the same bone structure. With this configuration, a device and a method that enable highly accurate motion transfer processing to be executed between source targets having different bone structures are realized. It should be noted that the effects described in the present specification are merely exemplary and not limited, and may have additional effects.
  • the information processing device of the present disclosure is a device that transfers the motion of one three-dimensional (3D) model (source model) to another model (target model) and executes a process of reproducing the motion (posture, movement). is there. For example, the motion (posture, movement) of a certain person (source model) is photographed by a camera, and the motion (posture, movement) of the person is reflected in the movement of the three-dimensional character (target model) displayed on the display unit. And so on.
  • the bone structure used in the three-dimensional model is a configuration in which parts such as the head, hands, and feet of the human body, and actual bone structures such as elbows and shoulders are simply connected.
  • the bone structure of the source model by analyzing the bone structure of the source model and reflecting the analysis result in the bone structure of the target model, motion transfer processing between the three-dimensional models becomes possible.
  • the motion transfer process using this bone structure can be easily executed with high accuracy when the bone structures of the source model and the target model are the same, but when the bone structures are not the same, the motion transfer process can be performed.
  • Highly accurate motion transfer is difficult. That is, when the bone structures of the source model and the target model are different, it becomes impossible to accurately perform the movement reproduction process using parameters such as the transfer of the movement of each bone between the models and the rotation.
  • the information processing apparatus of the present disclosure solves this problem. That is, even if the bone structures of the source model and the target model are different, it is possible to quickly and accurately transfer motion (posture, movement) between the models.
  • the information processing apparatus of the present disclosure performs a process of fitting a class parametric model to a source model and a target model, and performs motion transfer in consideration of not only the bone structure of each model but also the change of the mesh of the source model.
  • the class parametric model is a model that makes it possible to represent instances corresponding to various classes such as a person class, a quadruped animal class, a bird class, etc. by changing parameters. That is, it is a class-based three-dimensional model corresponding to various categories.
  • the class parametric model has both shape and bone structure parameters.
  • Classes of parametric models are, for example, humans, quadrupeds, and the like.
  • three-dimensional shapes of people with multiple types of body shapes are acquired in advance, and the dimension reduction technology of principal component analysis is used to create several spaces of the shape of the person.
  • Performs processing such as expressing (coefficient of basis vector) with parameters.
  • the information processing apparatus of the present disclosure transfers various motions of the source model to the target model by using a method of considering the shape of the mesh of the source model, that is, the "mesh" which is the divided region of the three-dimensional model. Furthermore, the motion transfer information considering this mesh shape is stored in the database, and which part of the target bone structure depends on which part of the source bone structure or a combination of multiple parts using the information recorded in the database. Performs processing such as estimating the function of what is being done.
  • motion transfer is performed in consideration of the mesh shape, and if there is a source motion (bone structure parameter) as an input, the target motion (bone structure parameter) can be performed at high speed, for example, in real time. It is also possible to calculate.
  • the information processing apparatus of the present disclosure transfers the motion of one three-dimensional (3D) model (source model) to another model (target model) and executes a process of reproducing the motion.
  • a typical character model consists of a mesh and a bone structure (rig).
  • the bone structure is a structure in which the actual bone structures such as the head, hands, feet and the like of the human body, and the actual bone structures such as the elbows and shoulders are simply connected as described above with reference to FIG. ..
  • the mesh is a divided region of the 3D model. The mesh corresponds to the polygonal surface of the character model.
  • the bone structure (rig) is used as a basic connection configuration when adding movement to a 3D model. Bone structures are connected by joints, each joint being connected to a model polygon mesh.
  • the indirectly connected mesh can be moved along with this process.
  • the user transforms the 3D model character into various poses by simply moving or rotating the positions of several joints without performing complicated deformation processing of many meshes of the 3D model. It becomes possible.
  • FIG. 2 shows a modified example of the three-dimensional model executed by moving or rotating the position of the joint of the bone structure.
  • FIG. 2 shows two three-dimensional models. These are all three-dimensional models with the same bone structure with joints at the same position on the body. By moving or rotating the position of the joints of the same bone structure, it is easy to generate 3D models of various movements and postures, such as an upright 3D model as shown on the left and a jumped 3D model as shown on the right. can do.
  • the posture (pose) of the three-dimensional model is changed by moving or rotating the joint position of this bone structure
  • the bone structures of the source model and the target model are the same bone structure. If the bone structures of the source model and the target model are different, the movement of each bone between the models cannot be transferred and the movement reproduction process using parameters such as rotation cannot be performed accurately.
  • the bone structure applied to the 3D model is not one type, but various different bone structures are used.
  • the bone structure used in each database that stores 3D model data is often different.
  • FIG. 3 shows examples of different bone structures.
  • FIG. 3 shows the following two types of bone structures. (1) Bone structure example 1 (2) Bone structure example 2
  • the two bone structure examples 1 and 2 shown in FIG. 3 have different indirect positions and have different bone structures.
  • the source model has the same bone structure as the bone structure example 1 shown in FIG. 3 (1)
  • the target model has the same bone structure as the bone structure example 2 shown in FIG. 3 (2)
  • the inter-models It becomes impossible to accurately transfer the movement of each bone and reproduce the movement and posture using parameters such as rotation, that is, motion transfer.
  • the information processing apparatus of the present disclosure solves this problem. That is, even if the bone structures of the source model and the target model are different, the movement of each bone between the models can be transferred, and the movement and posture reproduction processing using parameters such as rotation, that is, the motion transfer can be performed accurately. It is possible.
  • the information processing apparatus of the present disclosure processes the class parametric model to fit the source model and the target model, and performs motion transfer considering not only the bone structure of each model but also the change of the mesh of the source model.
  • the class parametric model is a model that makes it possible to represent various instances of a predetermined class by changing parameters.
  • Motion transfer that reflects the posture (pose) and movement of the source model in the posture and movement of the target model is executed by the processing of the present disclosure, that is, the processing example executed by applying the class parametric model and the conventional tag setting.
  • FIG. 4 shows an example of comparison with the processing example.
  • FIG. 4 is an example showing the source model 10 and the target models 21 and 22 that reproduce the posture and movement of the source model 10.
  • the target model 21 is a target model generated by applying the process of the present disclosure, that is, a class parametric model.
  • the target model 22 is a target model generated by the conventional tag setting.
  • the bone structure of the source model 10 and the bone structure of the target models 21 and 22 are different. It can be seen that the posture of the target model 21 shown in FIG. 4, that is, the posture of the target model 21 generated by applying the class parametric model is closer to that of the source model 10. On the other hand, the target model 22 generated by the conventional tag setting has a face orientation substantially in front, which is a posture different from that of the slightly downward source model 10. This is due to reasons such as misalignment of tag association due to differences in bone structure.
  • FIG. 5 shows another example. Similar to FIG. 4, FIG. 5 is an example showing the source model 30 and the target models 31 and 32 that reproduce the posture and movement of the source model 30.
  • the target model 31 is a target model generated by applying the process of the present disclosure, that is, a class parametric model.
  • the target model 32 is a target model generated by the conventional tag setting.
  • the bone structure of the source model 30 and the bone structures of the target models 31 and 32 are different. It can be seen that the posture of the target model 31 shown in FIG. 5, that is, the posture of the target model 31 generated by applying the class parametric model is closer to that of the source model 30. On the other hand, the target model 32 generated by the conventional tag setting has a face orientation substantially in front, which is a posture different from that of the slightly upward source model 30. This is due to reasons such as misalignment of tag association due to differences in bone structure.
  • the information processing device 100 inputs the following three types of data as input data.
  • Source model 101 Class parametric model 102, Target model 103,
  • the information processing device 100 of the present disclosure executes a process of transferring the motion of the source model 101 to the target model 103 and reproducing it.
  • the class parametric model 102 is a model that can represent various instances of various classes by changing parameters.
  • the class parametric model 102 has both shape parameters and bone structure parameters.
  • the class of the class parametric model 102 is, for example, a person, a quadruped, or the like.
  • three-dimensional shapes of people with multiple types of body shapes are acquired in advance, and the dimension reduction technology of principal component analysis is used to set the space of the shape of the person with several parameters. It is expressed by (coefficient of basis vector).
  • the source model 101, the class parametric model 102, and the target model 103 can be obtained from a 3D model database that stores various 3D models. Specifically, a three-dimensional model such as a game character can be used. However, in each case, it is necessary that bone structure information is added as attribute information and can be used. Further, it is necessary that motion information can be acquired or analyzed for the source model 101 and the class parametric model 102.
  • the motion information is information that defines the motion (movement and posture) of the model, for example, the arrangement information of each bone constituting the bone structure.
  • the motion information includes the arrangement information of each bone and is also called a motion parameter.
  • the motion (movement and posture) of the model is defined by the motion parameters corresponding to each bone constituting the bone structure.
  • the input data is, for example, as shown in FIG. Source model 101, Class parametric model 102, Target model 103, These three types of three-dimensional models.
  • it is a bone structure such as Bone Structure Example 1 or Bone Structure Example 2 shown in FIG.
  • the bone structure of the source model 101 is S
  • the bone structure of the target model 103 is T
  • the bone structures of the source model 101, the class parametric model 102, and the target model 103 are different bone structures.
  • the information processing device 100 of the present disclosure has the effect of enabling highly accurate motion transfer even when the bone structures of the source model 101 and the target model 103 are different.
  • the condition that the bone structures of the source model 101, the class parametric model 102, and the target model 103 are all different is not essential.
  • the processing of the information processing apparatus 100 of the present disclosure Highly accurate motion transfer from the source model 101 to the target model 103 becomes possible.
  • the parameters indicating the motion (posture or movement) of the source model 101 obtained from the bone structure of the source model 101 have different bone structures. It cannot be reflected correctly in the target model 103, and accurate motion transfer cannot be performed.
  • the input data is Bone structure S of source model 101 and motion information, Bone structure P of class parametric model 102, shape, motion information, Bone structure T of target model 103, Each of these data.
  • the source model mesh fitting unit 111 of the information processing apparatus 100 performs mesh fitting processing of the source model 101 and the class parametric model 102 to generate the source model instance 121.
  • the mesh fitting is a process of changing the parameters of the class parametric model 102 to generate a 3D modeled object representing an instance of the class matching the input source model 101, that is, the source model instance 121.
  • the mesh fitting process includes, for example, the distance between the feature points on the mesh of the class parameter model 102 and the feature points on the mesh of the input source model 101, or the distance between the meshes of the class parameter model 102 and the source model 101.
  • the process of fitting the class parametric model 102 to the input source model 101 is performed so that at least one of them is minimized by changing the parameters.
  • the existing methods can be applied to the feature point detection process and the inter-mesh distance minimization method.
  • the OpenPose method can be applied as the feature point detection process
  • the ICP method can be applied as the inter-mesh distance minimization method.
  • the specific process executed by the source model mesh fitting unit 111 by the mesh fitting process is a process of converting the bone structure S of the source model 101 into the same bone structure P as the bone structure P of the class parametric model 102.
  • the motion (movement and posture) of the input source model 101 of the original bone structure S is reflected in the source model instance 121 of the bone structure P, and the bone structure has the same motion as the motion of the input source model 101.
  • the source model instance 121 of P will be generated.
  • the source model mesh fitting unit 111 performs the mesh fitting processing of the source model 101 and the class parametric model 102 to generate the source model instance 121.
  • the source model instance 121 generated by the source model mesh fitting unit 111 has the same bone structure P as the bone structure P of the class parametric model 102.
  • the motion information that the original source model 101 has under the bone structure S becomes the normalized motion information that has been converted (normalized) so as to correspond to the bone structure P of the class parametric model 102.
  • the target model mesh fitting unit 112 inputs the target model 103 and the class parametric model 102, performs mesh fitting processing, and generates the target model instance 122.
  • the target model mesh fitting unit 112 is the distance between the feature points on the mesh of the class parameter model 102 and the feature points on the mesh of the input target model 103, or the distance between the meshes of the class parameter model 102 and the target model 103.
  • the process of fitting the class parametric model 102 to the input target model 103 is executed so that at least one of the above is minimized by changing the parameter.
  • the bone structure T of the target model 103 is converted into the same bone structure P as the bone structure P of the class parametric model 102.
  • the middle part of FIG. 7 shows an example of the source model instance 121 generated by the source model mesh fitting unit 111 and the target model instance 122 generated by the target model mesh fitting unit 112. Both the source model instance 121 and the target model instance 122 have the same bone structure P, that is, the same bone structure as the bone structure P of the class parametric model 102.
  • the motion transfer unit 123 executes the motion transfer process of transferring the posture and motion of the source model instance 121 to the target model instance 122 to generate the motion transfer target model instance 124.
  • Both the source model instance 121 and the target model instance 122 have the same bone structure P, and parameters obtained by analyzing the bone structure of the source model instance 121, for example, parameters indicating the amount of joint or rotation are acquired.
  • the bone structure of the target model instance 122 it is possible to perform accurate posture and movement transfer processing between source targets, that is, motion transfer processing.
  • the motion transfer process for example, as a process for adjusting the position of the hand, foot, etc., a configuration in which the delicate position and angle of the hand, foot, etc. are adjusted by an analysis process using an inverse kinematics formula. May be good.
  • the motion transfer unit 123 performs a process of transferring the posture and motion of the source model instance 121 to the target model instance 122, and as a result of this process, the motion transfer target model instance 124 is generated.
  • the motion transfer target model instance 124 generated by the motion transfer unit 123 is shown in the lower part of FIG.
  • the motion transfer target model instance 124 has the same bone structure as the bone structure P of the class parametric model 102. Further, the posture and movement have the posture and movement reflecting the posture and movement of the source model instance 121, that is, the retargeting normalized motion.
  • the motion transfer target model instance 124 generated by the motion transfer unit 123 may be used as the final output, but the motion transfer target model instance 124 has a bone structure T different from the bone structure T of the target model 103 which is input data. .. Therefore, as an optional process, the motion transfer target model instance 124 having the bone structure P may be returned to the bone structure T of the target model 103 which is the input data.
  • the motion transfer target model transformation unit 125 inputs the motion transfer target model instance 124 generated by the motion transfer unit 123 and the target model 103 which is input data.
  • the motion transfer target model conversion unit 125 applies these two models to execute the bone structure conversion process of the motion transfer target model instance 124 to generate the motion transfer target model 126.
  • the motion transfer target model 126 has a bone structure T of the target model 103 which is input data.
  • the specific processing executed by the motion transfer target model conversion unit 125 is the distance between the feature points on the mesh of the motion transfer target model instance 124 and the feature points on the mesh of the input target model 103, or the motion transfer target model.
  • the input target model 103 is transferred to the motion transfer target model instance 124 so that the distance between the meshes of the instance 124 and the input target model 103, at least one of these, is minimized by changing the parameter of the bone structure T of the input target model 103. It is a process to fit. That is, the motion transfer target model 126 having the same motion as the motion transfer target model instance 124 is generated. As a result, the motion transfer target model 126 is generated.
  • the motion transfer target model 126 has a bone structure T of the target model 103 which is input data, and is a three-dimensional model having a posture, a posture reflecting the movement, and a movement of the source model 101. That is, a target model that reproduces the posture and movement of the source model with high accuracy is generated.
  • the database 130 stores the bone structure S of the source model 101 as input data, the parameter indicating the motion, the bone structure T of the motion transfer target model 126, and the corresponding data of the parameter indicating the motion.
  • the parameter indicating the motion is, for example, a parameter indicating the arrangement of each bone constituting the bone structure. This parameter has a different value depending on the motion (movement, posture) of the model.
  • the 3D model itself may or may not be stored in the database 130.
  • FIG. 8 An example of data stored in the database 130 will be described with reference to FIG.
  • Each of the data (a), (b), (c) ... Shown in FIG. 8 is an example of data stored in the database 130.
  • the three-dimensional model shown at the bottom of FIG. 8 is reference data and is not stored in the database.
  • data indicating (bone structure, motion) information of the source model corresponding to various movements and the target model are stored in association with each other.
  • the stored data in the database 130 is used for the subsequent motion transfer process.
  • a specific example of the motion transfer process using the data stored in the database 130 will be described later.
  • Step S101 First, in step S101, the information processing apparatus 100 stores the bone structure and motion information of the input source model in the DB.
  • This process is a process of storing (bone structure, motion) information of the source model 101, which is the input data shown in FIG. 6, in the database 130.
  • the motion information is a parameter indicating the arrangement of each bone constituting the bone structure, for example.
  • This parameter has different values depending on the motion (movement, posture) of the source model.
  • step S102 the information processing apparatus 100 executes mesh fitting to fit the class parametric model to the input source model to generate a source model instance.
  • This process is a process executed by the source model mesh fitting unit 111 shown in FIG.
  • the source model mesh fitting unit 111 performs mesh fitting processing of the source model 101 and the class parametric model 102 to generate the source model instance 121.
  • the distance between the feature points on the mesh of the class parametric model 102 and the feature points on the mesh of the input source model 101, or the distance between the meshes of the class parametric model 102 and the source model 101, at least one of these is used as a parameter.
  • the process of fitting the class parameter model 102 to the input source model 101 is executed so as to be minimized by the change of.
  • the motion of the input source model 101 of the original bone structure S is reflected in the source model instance 121 of the bone structure P, and the source model instance 121 of the bone structure P having the same motion as the motion of the input source model 101 Will be generated.
  • step S103 the information processing apparatus 100 executes mesh fitting to fit the class parametric model to the input target model. Create a target model instance.
  • This process is a process executed by the target model mesh fitting unit 112 shown in FIG.
  • the target model mesh fitting unit 112 is the distance between the feature points on the mesh of the class parameter model 102 and the feature points on the mesh of the input target model 103, or the distance between the meshes of the class parameter model 102 and the target model 103.
  • the process of fitting the class parametric model 102 to the input target model 103 is executed so that at least one of the above is minimized by changing the parameter.
  • the bone structure T of the target model 103 is converted into the same bone structure P as the bone structure P of the class parametric model 102.
  • Step S104 the information processing apparatus 100 transfers motion from the source model instance to the target model instance to generate a motion transfer target model instance.
  • This process is a process executed by the motion transfer unit 123 shown in FIG.
  • the motion transfer unit 123 executes a motion transfer process for transferring the posture and motion of the source model instance 121 to the target model instance 122 to generate the motion transfer target model instance 124.
  • Both the source model instance 121 and the target model instance 122 have the same bone structure P, and parameters obtained by analyzing the bone structure of the source model instance 121, for example, parameters indicating the position and rotation amount of the joint are acquired. Then, by reflecting it in the bone structure of the target model instance 122, accurate posture and motion transfer processing between source targets, that is, motion transfer processing can be performed.
  • step S105 the information processing apparatus 100 executes mesh fitting to fit the input target model to the target instance, reconverts the bone structure of the target instance into the bone structure of the input target model, and performs the motion transfer target model. To generate.
  • This process is a process executed by the motion transfer target model transformation unit 125 shown in FIG. As described above with reference to FIG. 6, this process is an optional process.
  • the process of step S105 is a process of returning the motion transfer target model instance 124 having the bone structure P to the bone structure T of the target model 103 which is the input data.
  • the motion transfer target model conversion unit 125 inputs the motion transfer target model instance 124 generated by the motion transfer unit 123 and the target model 103 which is input data.
  • the motion transfer target model conversion unit 125 applies these two models to execute the bone structure conversion process of the motion transfer target model instance 124 to generate the motion transfer target model 126.
  • the motion transfer target model 126 has a bone structure T of the target model 103 which is input data.
  • step S106 the information processing apparatus 100 stores the bone structure and motion information of the motion transfer target model in the DB.
  • This process is a process in which the motion transfer target model conversion unit 125 shown in FIG. 6 stores the (bone structure, motion) information of the motion transfer target model 126 generated as the final motion transfer target three-dimensional model in the database 130. is there.
  • the motion information is a parameter indicating the arrangement of each bone constituting the bone structure, for example.
  • This parameter has a different value depending on the motion (movement, posture) of the target model.
  • the data described above with reference to FIG. 8 is stored in the database 130. That is, the database 130 stores the bone structure S of the source model 101 as input data, the parameter indicating the motion, the bone structure T of the motion transfer target model 126, and the corresponding data of the parameter indicating the motion. The stored data in the database 130 is used for the subsequent motion transfer process.
  • a configuration may be configured in which a motion transfer process for transferring only a part of the motion of the model to the target model is executed.
  • it may be configured to acquire partial motions of different parts from a plurality of source models and execute a motion transfer process of transferring the partial motions to each part of the target model.
  • a motion transfer process of transferring the composite motion obtained by the composite process using the weight (coefficient) set by the user or the composite process using the function to the target model is also possible to execute.
  • Example 2 an example of motion transfer processing using motion correspondence information of the source target stored in the database will be described.
  • the database 130 contains the correspondence data of the (bone structure, motion) information of the source model and the target model corresponding to various motions. Is accumulated.
  • the second embodiment shown below is an example in which motion transfer from a source model having a different bone structure to a target model is executed by using the data stored in this database.
  • this embodiment it is possible to execute motion transfer from a source model having a different bone structure to a target model without using a class parametric model.
  • FIG. 10 is a diagram showing a configuration example of the information processing apparatus 200 of this embodiment.
  • the configuration of the information processing apparatus 200 of this embodiment and the processing to be executed will be described with reference to FIG.
  • the information processing device 200 inputs the following two types of data as input data.
  • the information processing device 200 executes a process of transferring the motion of the source model 101 to the target model 103 and reproducing it.
  • the database 130 is the database 130 of the information processing apparatus 100 described above with reference to FIG. As described above with reference to FIG. 8, the database 130 stores the correspondence data of the (bone structure, motion) information of the source model and the target model corresponding to various motions.
  • the motion information is a parameter indicating the arrangement of each bone constituting the bone structure, for example.
  • This parameter has different values depending on the motion (movement, posture) of the model.
  • the motion parameter conversion function calculation unit 133 shown in FIG. 10 extracts the corresponding data of the (bone structure, motion) information of the source model and the target model from the database 130.
  • the source model motion information 131 and the retargeting motion information 132 shown in FIG. These pieces of information are stored in the database as source / target-corresponding movement information of the same movement unit. These are the corresponding data such as (a), (b), and (c) described above with reference to FIG.
  • the motion parameter conversion function calculation unit 133 acquires a large amount of corresponding data of (bone structure, motion) information of the source model and the target model from the database 130.
  • the motion parameter conversion function calculation unit 133 is a function indicating which part of the target bone structure corresponds to which part (or a combination of a plurality of parts) of the source bone structure based on these corresponding data, that is, Calculate the "motion parameter conversion function".
  • the motion parameter conversion function 134 shown in FIG. 10 is generated.
  • the function F shown in the above (Equation 1) is calculated.
  • the motion parameter Pt indicating the motion of the target model can be calculated.
  • the motion parameter Pt indicating the motion of the target model is a motion parameter for reproducing the same motion as the motion of the source model defined by the motion information parameter (Ps) of the source model on the target model.
  • motion information parameters Ps are acquired from the source model 101 that is the motion transfer source, that is, the source model 101 in the input data, and conversion processing is performed based on the motion parameter conversion functions F and 134 to perform the conversion process and target model.
  • the motion parameter Pt indicating the motion of is calculated.
  • Various methods can be applied as the calculation method of the motion parameter conversion function F. For example, it is possible to calculate the function using linear regression assuming that the bone structures of the source and target are different.
  • S ⁇ si
  • s1, s2, s3 ... are, for example, parameters corresponding to each bone of the source model corresponding to a certain motion stored in the database.
  • This is the i-th coefficient when the bone structure parameter is expressed as an Euclidean transformation. This coefficient determines the placement (position, angle, etc.) of each bone.
  • T ⁇ ti
  • t1, t2, t3 ... are parameters corresponding to each bone of the target model stored in the database. This is the i-th coefficient when the bone structure parameter is expressed as an Euclidean transformation. This coefficient determines the placement (position, angle, etc.) of each bone.
  • cij is a coefficient
  • Ti is expressed as a linear combination of s1, s2, ..., Sn.
  • the database 130 stores pair data of source and target motion parameters corresponding to many different motions.
  • the motion parameter conversion function calculation unit 133 estimates the coefficient cij of the above (Equation 2) using a large number of pair data stored in these databases 130. For example, it can be estimated using the linear least squares method.
  • the motion parameter conversion function calculation unit 133 uses the corresponding data of the (bone structure, motion) information of the source model and the target model acquired from the database 130, and the function shown in the above (Equation 1), that is, motion. Calculate the parameter conversion function.
  • the conversion function for performing the motion transfer from the source model having a different bone structure to the target model is provided by using the data stored in the database 130. Calculate and apply the calculated function to perform motion transfer from a source model with a different bone structure to the target model.
  • Step S201 First, in step S201, the information processing apparatus 200 acquires the motion information of the source model and the motion information of the target model stored in the database.
  • This process is a process executed by the motion parameter conversion function calculation unit 133 shown in FIG.
  • the motion parameter conversion function calculation unit 133 extracts the corresponding data of the motion information of the source model and the target model from the database 130.
  • the motion information is a parameter indicating the arrangement of each bone constituting the bone structure, for example.
  • This parameter has different values depending on the motion (movement, posture) of the model.
  • Step S202 the information processing apparatus 200 calculates a function (motion parameter conversion function) that converts the motion of the source model into the motion of the target model by using the parameter (motion parameter) acquired from the database.
  • a function motion parameter conversion function
  • This process is also a process executed by the motion parameter conversion function calculation unit 133 shown in FIG.
  • the motion parameter conversion function calculation unit 133 inputs a motion parameter Ps indicating the motion of the source model, and calculates a function for calculating the motion parameter Pt indicating the motion of the target model, that is, the motion parameter conversion function shown below.
  • Pt F (Ps) ... (Equation 1)
  • the motion parameter Pt indicating the motion of the target model can be calculated.
  • Step S203 the information processing apparatus 200 applies a motion parameter conversion function to convert the motion parameter of the source model into a motion parameter corresponding to the target model, and applies the conversion parameter to the target model.
  • the motion of the source model is transferred to the target model.
  • This process is a process to which the motion parameter conversion function 134 shown in FIG. 6 is applied.
  • motion information parameters Ps are acquired from the source model 101 that is the motion transfer source, that is, the source model 101 in the input data, and parameter conversion processing based on the motion parameter conversion functions F and 134 is performed to perform the target.
  • the motion parameter Pt indicating the motion of the model is calculated.
  • a target model having the same motion as the motion of the source model, that is, the motion transfer target model 150 shown in FIG. 10 is generated.
  • the conversion function for performing the motion transfer from the source model having a different bone structure to the target model is provided by using the data stored in the database 130. Calculate and apply a calculation function to perform motion transfer from a source model with a different bone structure to a target model.
  • the information processing device of the present disclosure can be specifically configured by, for example, an information processing device such as a PC (Personal Computer).
  • the information processing device 300 includes a controller 301, a ROM (Read Only Memory) 302, a RAM (Random Access Memory) 303, an input / output interface 305, and a bus 304 connecting these to each other.
  • ROM Read Only Memory
  • RAM Random Access Memory
  • the controller 301 appropriately accesses the RAM 303 and the like as necessary, and comprehensively controls each block of the information processing apparatus 300 while performing various arithmetic processes.
  • the controller 301 may be a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), or the like.
  • the ROM 302 is a non-volatile memory in which firmware such as an OS, a program, and various parameters to be executed by the controller 301 is fixedly stored.
  • the RAM 303 is used as a work area of the controller 301, etc., and temporarily holds the OS, various applications being executed, and various data being processed.
  • An input unit 306, an output unit 307, a storage unit 308, a communication unit 309, a drive 310 to which the removable media 311 can be mounted, and the like are connected to the input / output interface 305.
  • the input / output interface 105 may be configured to be connectable to an external peripheral device via a USB (Universal Serial Bus) terminal, an IEEE terminal, or the like.
  • USB Universal Serial Bus
  • the input unit 306 is, for example, an input unit capable of inputting captured image input processing, user operation information, and the like.
  • the input unit 306 may have an imaging unit.
  • the input unit 306 also includes a pointing device such as a mouse, a keyboard, a touch panel, and other input devices.
  • the output unit 307 outputs data to, for example, a display unit.
  • the output unit 307 may have a display unit.
  • the storage unit 308 is a non-volatile memory such as an HDD (Hard Disk Drive), a flash memory (SSD; Solid State Drive), or other solid-state memory.
  • the storage unit 308 stores the OS, various applications, and various data.
  • the storage unit 308 is also used as a storage area for input images, image information, generated output images, and the like.
  • the communication unit 309 is, for example, a NIC (Network Interface Card) for Ethernet (registered trademark), and is responsible for communication processing via a network.
  • NIC Network Interface Card
  • Ethernet registered trademark
  • the drive 310 is used for data recording and reproduction processing using the removable media 311.
  • the removable media 311 is composed of, for example, a BD, a DVD, a CD, an HDD, a flash memory, or the like.
  • the technology disclosed in the present specification can have the following configuration.
  • (1) It has a data processing unit that executes motion transfer between 3D models.
  • the data processing unit The process of converting the bone structure S of the source model of the motion transfer source into the bone structure P, The process of converting the bone structure T of the target model to which the motion is transferred to the bone structure P, and
  • An information processing device that executes a motion transfer process that transfers the motion of a source model having a bone structure P to a target model having a bone structure P.
  • the data processing unit further The information processing apparatus according to (1), which reconverts the bone structure P of the target model after executing the motion transfer process into the bone structure T.
  • the data processing unit A source model instance in which the bone structure S of the source model of the motion transfer source is converted into the bone structure P, A target model instance in which the bone structure T of the target model to which the motion is transferred is converted into the bone structure P is generated.
  • the information processing apparatus according to (1) or (2), which executes a motion transfer process between the generated source model instance having the same bone structure and the target model instance.
  • bone structure P is a bone structure of a class parametric model which is a three-dimensional model of a class unit corresponding to various categories.
  • the data processing unit A mesh fitting process is performed to fit the class parametric model to the source model so as to minimize at least one of the distance between the feature points on the mesh of the class parametric model and the source model, or the distance between the meshes.
  • the information processing apparatus according to (4) which converts the bone structure S of the source model into the bone structure P.
  • the data processing unit A mesh fitting process is performed to fit the class parametric model to the target model so as to minimize at least one of the distance between the feature points on the mesh of the class parametric model and the target model, or the distance between the meshes.
  • the information processing apparatus according to (4) or (5) which converts the bone structure T of the target model into the bone structure P.
  • the data processing unit Bone structure and motion information of the source model, and The information processing apparatus according to any one of (1) to (6), which executes a process of recording data in which data in which the bone structure of the target model after motion transfer is associated with motion information is recorded in a database.
  • the data processing unit The information processing apparatus according to any one of (1) to (7), which executes a motion transfer process for transferring only a part of the motion of the source model to the target model.
  • the data processing unit The information processing according to any one of (1) to (7), which acquires partial motions of different parts from a plurality of source models and executes a motion transfer process of transferring the partial motions to each part of the target model. apparatus.
  • the data processing unit For a plurality of motions acquired from a plurality of source models, a motion transfer process of transferring a composite motion obtained by a composite process using a weight (coefficient) set by a user or a composite process using a function to the target model is performed.
  • the information processing apparatus according to any one of (1) to (7) to be executed.
  • the motion parameter of the source model is converted into the motion parameter corresponding to the target model by using the motion parameter conversion function F, the conversion parameter is applied to the target model, and the motion of the source model has a bone structure different from that of the source model.
  • An information processing device that executes motion transfer processing to transfer to the target model.
  • the data processing unit Obtain the motion parameters that define the motions of the source model and target model that have the same motion from the database.
  • the information processing device It has a data processing unit that executes motion transfer between 3D models.
  • the data processing unit The process of converting the bone structure S of the source model of the motion transfer source into the bone structure P, The process of converting the bone structure T of the target model to which the motion is transferred to the bone structure P, and An information processing method that executes a motion transfer process that transfers the motion of a source model having a bone structure P to a target model having a bone structure P.
  • the information processing device It has a data processing unit that executes motion transfer between 3D models.
  • the data processing unit The motion parameter of the source model is converted into the motion parameter corresponding to the target model by using the motion parameter conversion function F, the conversion parameter is applied to the target model, and the motion of the source model has a bone structure different from that of the source model.
  • An information processing method that executes a motion transfer process that transfers to the target model.
  • a program that executes information processing in an information processing device The information processing device It has a data processing unit that executes motion transfer between 3D models.
  • a program that executes information processing in an information processing device The information processing device It has a data processing unit that executes motion transfer between 3D models.
  • the motion parameter of the source model is converted into the motion parameter corresponding to the target model by using the motion parameter conversion function F, the conversion parameter is applied to the target model, and the motion of the source model has a bone structure different from that of the source model.
  • the series of processes described in the specification can be executed by hardware, software, or a composite configuration of both.
  • the program in which the processing sequence is recorded is installed in the memory in the computer incorporated in the dedicated hardware and executed, or the program is stored in a general-purpose computer capable of executing various processing. It can be installed and run.
  • the program can be pre-recorded on a recording medium.
  • programs can be received via a network such as LAN (Local Area Network) or the Internet and installed on a recording medium such as a built-in hard disk.
  • the various processes described in the specification are not only executed in chronological order according to the description, but may also be executed in parallel or individually as required by the processing capacity of the device that executes the processes.
  • the system is a logical set configuration of a plurality of devices, and the devices having each configuration are not limited to those in the same housing.
  • a device and a method capable of executing highly accurate motion transfer processing between source targets having different bone structures are realized. Specifically, for example, a process of converting the bone structure S of the source model of the motion transfer source into a bone structure P, a process of converting the bone structure T of the target model of the motion transfer destination into a bone structure P, and a bone.
  • the motion transfer process of transferring the motion of the source model having the structure P to the target model having the bone structure P is executed.
  • the data processing unit generates a source model instance in which the bone structure S of the source model of the motion transfer source is converted into the bone structure P and a target model instance in which the bone structure T of the target model of the motion transfer destination is converted into the bone structure P. , Execute motion transfer processing between the generated instances having the same bone structure. With this configuration, a device and a method that enable highly accurate motion transfer processing to be executed between source targets having different bone structures are realized.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

骨構造が異なるソースターゲット間で、高精度なモーション移転処理を実行可能とした装置、方法を提供する。モーション移転元のソースモデルの骨構造Sを、骨構造Pに変換する処理と、モーション移転先のターゲットモデルの骨構造Tを、骨構造Pに変換する処理と、骨構造Pを持つソースモデルのモーションを、骨構造Pを持つターゲットモデルに移転するモーション移転処理を実行する。データ処理部は、モーション移転元のソースモデルの骨構造Sを骨構造Pに変換したソースモデルインスタンスと、モーション移転先のターゲットモデルの骨構造Tを骨構造Pに変換したターゲットモデルインスタンスを生成し、生成した同一骨構造を有するインスタンス間で、モーション移転処理を実行する。

Description

情報処理装置、および情報処理方法、並びにプログラム
 本開示は、情報処理装置、および情報処理方法、並びにプログラムに関する。さらに詳細には、ある1つの3次元(3D)モデル(ソースモデル)のモーション(姿勢、動き)を別のモデル(ターゲットモデル)に移転するモーション移転処理を実行する情報処理装置、情報処理システム、並びにプログラムに関する。
 近年、コンピュータ・グラフィクス(CG:Computer Graphics)技術を用いた3次元(3D)画像生成技術が、映画やゲームなど様々な分野で利用されている。
 例えば、特許文献1(特開2008-052726号公報)は、ある1つの3次元(3D)モデル(ソースモデル)のモーションを別のモデル(ターゲットモデル)に移転して、モーション(姿勢、動き)を再現する構成を開示している。
 ソースとターゲットの2つのキャラクタの部分に最小限のトポロジ類似性があれば、これらの間でモーション移転を可能とする構成を開示している。
 具体的には、ソースとターゲットの各部分にユーザがタグを付与し、タグ情報を用いて、ソースとターゲット間のマッピングを行い、モーションを移転する構成である。
 この処理を行うことで、骨構造を定義することなく、モーションの移転が可能となる。しかし、この手法は、ユーザがソースのどの部分がターゲットのどの部分に対応するかを判別してタグを対応付けることが必要であり、専門的な知識が必要となる。
 また、タグの数が少ないと、正確なモーション(姿勢、動き)の移転ができないという問題もある。
 正確なタグ対応付けを行い、タグの数を増やすことで、より高精度なモーション移転が可能となるが、こ処理のためには、高度な専門知識と、膨大な作業量が必要となるという問題がある。
特開2008-052726号公報
 本開示は、例えば上述の問題点に鑑みてなされたものであり、高度な専門知識のないユーザであっても、簡単にある1つの3次元(3D)モデル(ソースモデル)のモーションを、別のモデル(ターゲットモデル)に移転して再現するモーション移転を可能とした情報処理装置、および情報処理方法、並びにプログラムを提供するものである。
 本開示の第1の側面は、
 3次元モデル間のモーション移転を実行するデータ処理部を有し、
 前記データ処理部は、
 モーション移転元のソースモデルの骨構造Sを、骨構造Pに変換する処理と、
 モーション移転先のターゲットモデルの骨構造Tを、前記骨構造Pに変換する処理と、
 骨構造Pを持つソースモデルのモーションを、骨構造Pを持つターゲットモデルに移転するモーション移転処理を実行する情報処理装置にある。
 さらに、本開示の第2の側面は、
 3次元モデル間のモーション移転を実行するデータ処理部を有し、
 前記データ処理部は、
 モーションパラメータ変換関数Fを用いてソースモデルのモーションパラメータを、ターゲットモデル対応のモーションパラメータに変換し、変換パラメータをターゲットモデルに適用して、ソースモデルのモーションを、前記ソースモデルと異なる骨構造を持つターゲットモデルに移転するモーション移転処理を実行する情報処理装置にある。
 さらに、本開示の第3の側面は、
 情報処理装置において実行する情報処理方法であり、
 前記情報処理装置は、
 3次元モデル間のモーション移転を実行するデータ処理部を有し、
 前記データ処理部が、
 モーション移転元のソースモデルの骨構造Sを、骨構造Pに変換する処理と、
 モーション移転先のターゲットモデルの骨構造Tを、前記骨構造Pに変換する処理と、
 骨構造Pを持つソースモデルのモーションを、骨構造Pを持つターゲットモデルに移転するモーション移転処理を実行する情報処理方法にある。
 さらに、本開示の第4の側面は、
 情報処理装置において実行する情報処理方法であり、
 前記情報処理装置は、
 3次元モデル間のモーション移転を実行するデータ処理部を有し、
 前記データ処理部が、
 モーションパラメータ変換関数Fを用いてソースモデルのモーションパラメータを、ターゲットモデル対応のモーションパラメータに変換し、変換パラメータをターゲットモデルに適用して、ソースモデルのモーションを、前記ソースモデルと異なる骨構造を持つターゲットモデルに移転するモーション移転処理を実行する情報処理方法にある。
 さらに、本開示の第5の側面は、
 情報処理装置において情報処理を実行させるプログラムであり、
 前記情報処理装置は、
 3次元モデル間のモーション移転を実行するデータ処理部を有し、
 前記プログラムは、前記データ処理部に、
 モーション移転元のソースモデルの骨構造Sを、骨構造Pに変換する処理と、
 モーション移転先のターゲットモデルの骨構造Tを、前記骨構造Pに変換する処理と、
 骨構造Pを持つソースモデルのモーションを、骨構造Pを持つターゲットモデルに移転するモーション移転処理を実行させるプログラムにある。
 さらに、本開示の第6の側面は、
 情報処理装置において情報処理を実行させるプログラムであり、
 前記情報処理装置は、
 3次元モデル間のモーション移転を実行するデータ処理部を有し、
 前記プログラムは、前記データ処理部に、
 モーションパラメータ変換関数Fを用いてソースモデルのモーションパラメータを、ターゲットモデル対応のモーションパラメータに変換し、変換パラメータをターゲットモデルに適用して、ソースモデルのモーションを、前記ソースモデルと異なる骨構造を持つターゲットモデルに移転するモーション移転処理を実行させるプログラムにある。
 なお、本開示のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
 本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
 本開示の一実施例の構成によれば、骨構造が異なるソースターゲット間で、高精度なモーション移転処理を実行可能とした装置、方法が実現される。
 具体的には、例えば、モーション移転元のソースモデルの骨構造Sを、骨構造Pに変換する処理と、モーション移転先のターゲットモデルの骨構造Tを、骨構造Pに変換する処理と、骨構造Pを持つソースモデルのモーションを、骨構造Pを持つターゲットモデルに移転するモーション移転処理を実行する。データ処理部は、モーション移転元のソースモデルの骨構造Sを骨構造Pに変換したソースモデルインスタンスと、モーション移転先のターゲットモデルの骨構造Tを骨構造Pに変換したターゲットモデルインスタンスを生成し、生成した同一骨構造を有するインスタンス間で、モーション移転処理を実行する。
 本構成により、骨構造が異なるソースターゲット間で、高精度なモーション移転処理を実行可能とした装置、方法が実現される。
 なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
骨構造の一例について説明する図である。 骨構造と3次元モデルのモーションとの対応について説明する図である。 異なる骨構造の例について説明する図である。 従来処理と、本開示の処理を適用したモーション移転処理例について説明する図である。 従来処理と、本開示の処理を適用したモーション移転処理例について説明する図である。 本開示の情報処理装置の構成と処理の一例について説明する図である。 本開示の情報処理装置の実行する処理とインスタンスやモデルの具体例について説明する図である。 データベースに格納するデータの具体例について説明する図である。 本開示の情報処理装置の実行する処理のシーケンスについて説明するフローチャートを示す図である。 本開示の情報処理装置の構成と処理の一例について説明する図である。 本開示の情報処理装置の実行する処理のシーケンスについて説明するフローチャートを示す図である。 情報処理装置のハードウェア構成例について説明する図である。
 以下、図面を参照しながら本開示の情報処理装置、および情報処理方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行なう。
 1.本開示の情報処理装置の実行する処理の概要について
 2.本開示の情報処理装置の構成と実行する処理の詳細について
 3.データベースに格納したソースターゲットのモーション対応情報を利用したモーション移転処理例について
 4.情報処理装置のハードウェア構成例について
 5.本開示の構成のまとめ
  [1.本開示の情報処理装置の実行する処理の概要について]
 本開示の情報処理装置は、一つの3次元(3D)モデル(ソースモデル)のモーションを別のモデル(ターゲットモデル)に移転して、モーション(姿勢、動き)を再現する処理を実行する装置である。例えば、ある人物(ソースモデル)のモーション(姿勢、動き)をカメラによって撮影し、その人物のモーション(姿勢、動き)を、表示部に表示される3次元キャラクタ(ターゲットモデル)の動きに反映させるといった処理を行う。
 このような3次元モデル間のモーション移転処理の一般的な手法として、モデルの骨構造を用いる手法が知られている。
 3次元モデル間のモーション移転には、モデルの骨構造を構成する各骨の移転処理や、回転等のパラメータを用いた処理が実行される。
 骨構造の一例を図1に示す。3次元モデルにおいて利用される骨構造は、図1に示すように、人体の頭部、手、足等の部位、肘、肩等の実際の骨構造を簡略的に接続した構成である。
 例えば、ソースモデルの骨構造を解析し、解析結果をターゲットモデルの骨構造に反映させることで、3次元モデル間のモーション移転処理が可能となる。
 しかし、この骨構造を用いたモーション移転処理は、ソースモデルとターゲットモデルの骨構造が同一である場合には簡単に高精度に実行することが可能であるが、同一の骨構造でない場合は、高精度なモーション移転は困難である。
 すなわち、ソースモデルとターゲットモデルの骨構造が異なる場合、モデル間の各骨の動きの移転や、回転等のパラメータを用いた動き再現処理を正確に行うことができなくなる。
 本開示の情報処理装置は、この問題を解決するものである。
 すなわち、ソースモデルとターゲットモデルの骨構造が異なっていても、モデル間のモーション(姿勢、動き)移転を迅速にかつ正確に行うことを可能とするものである。
 本開示の情報処理装置は、クラスパラメトリックモデルをソースモデルとターゲットモデルにフィットさせる処理を行い、各モデルの骨構造だけではなくソースモデルのメッシュの変化をも考慮したモーション移転を行う。
 クラスパラメトリックモデルとは、様々なカテゴリ対応のクラス、例えば人物クラス、四脚動物クラス、鳥類クラス等、様々なクラス対応のインスタンスを、パラメータを変更して表すことを可能としたモデルである。すなわち、様々なカテゴリに対応するクラス単位の3次元モデルである。
 クラスパラメトリックモデルは、形状パラメータと骨構造のパラメータの両方を持つ。クラスパラメトリックモデルのクラスは、例えば人物、四脚動物等である。
 例えば、人物のクラスパラメトリックモデルを生成するには、予め、複数種類の体形の人の3次元形状を取得して、主成分分析の次元削減技術を用いて、人物の形状の空間を数個のパラメータで(基底ベクトルの係数)表すといった処理を行う。
 本開示の情報処理装置は、ソースモデルのメッシュ、すなわち、3次元モデルの分割領域である「メッシュ」の形状を考慮する手法を用いてソースモデルの様々なモーションをターゲットモデルに移転する。さらに、このメッシュ形状を考慮したモーション移転情報をデータベースに保存し、データベースに記録された情報を用いてターゲットの骨構造のどの部分がソースの骨構造のどの部分、または複数の部分の組み合わせに依存しているかの関数を推定するといった処理を行う。
 また、本開示の処理では、メッシュ形状を考慮したモーション移転を行うものであり、入力としてソースのモーション(骨構造のパラメータ)さえあれば、ターゲットのモーション(骨構造のパラメータ)を高速、例えばリアルタイムに計算することも可能となる。
 前述したように、本開示の情報処理装置は、一つの3次元(3D)モデル(ソースモデル)のモーションを別のモデル(ターゲットモデル)に移転して、動きを再現する処理を実行する。
 例えば、CG(コンピューターグラフィックス)処理を伴う情報処理分野では、様々な3Dキャラクタがモデリングされる。一般的なキャラクタモデルはメッシュと骨構造(リグ)で構成される。
 骨構造(リグ)は、先に図1を参照して説明したように、人体の頭部、手、足等の部位、肘、肩等の実際の骨構造を簡略的に接続した構成である。
 メッシュは、3次元モデルの分割領域である。メッシュはキャラクタモデルのポリゴン面に相当する。
 骨構造(リグ)は、3次元モデルに動きなどをつける際の基本的な接続構成として用いられる。骨構造は、関節で接続され、各関節がモデルのポリゴンメッシュと接続される。
 3次元モデルの動きを指示するオペレータやユーザは、3次元モデルの関節の位置を移動、または回転させると、この処理に併せて間接に接続されたメッシュも動かせる。この結果、ユーザは、3次元モデルの多数のメッシュの複雑な変形処理を行うことなく、数個の関節の位置の移動や回転処理を行うのみで、3次元モデルキャラクタを様々なポーズに変形させることが可能となる。
 骨構造の関節の位置の移動や回転によって実行される3次元モデルの変形例を図2に示す。
 図2には、2つの3次元モデルを示している。これらは、いずれも体の同じ位置に関節を持つ同一の骨構造を有する3次元モデルである。
 この同一の骨構造の関節の位置の移動や回転によって左のように直立した3次元モデルや、右に示すようにジャンプした3次元モデル等、様々な動き、姿勢の3次元モデルを容易に生成することができる。
 しかし、この骨構造の関節位置の移動、回転によって3次元モデルの姿勢(ポーズ)を変更させる場合、ソースモデルとターゲットモデルの骨構造は、同一の骨構造であることが前提である。
 ソースモデルとターゲットモデルの骨構造が異なる場合、モデル間の各骨の動きの移転や、回転等のパラメータを用いた動き再現処理を正確に行うことができなくなる。
 現状において、3次元モデルに適用される骨構造は一種類ではなく、様々な異なる骨構造が利用されている。例えば、3次元モデルデータを格納したデータベース単位で利用される骨構造は異なっていることが多い。
 ソースモデルとターゲットモデルの骨構造が異なる場合、モデル間の各骨の動きの移転や、回転等のパラメータを用いた動き再現処理を正確に行うことができなくなる。
 図3に、異なる骨構造の例を示す。
 図3には、以下の2種類の骨構造を示している。
 (1)骨構造例1
 (2)骨構造例2
 図3に示す2つの骨構造例1,2は、間接位置が異なっており、異なる骨構造を有する。
 例えば、ソースモデルが、図3(1)に示す骨構造例1と同様の骨構造であり、ターゲットモデルが図3(2)に示す骨構造例2と同様の骨構造である場合、モデル間の各骨の動きの移転や、回転等のパラメータを用いた動きや姿勢の再現処理、すなわちモーション移転を正確に行うことができなくなる。
 すなわち、骨構造例1と同様の骨構造を持つソースモデルの骨構造を解析して、その解析結果として得られるパラメータを、骨構造例2と同様の骨構造を持つターゲットモデルに適用しても、パラメータの反映位置がずれてしまい、正確な動きや姿勢の再現ができなくなる。
 本開示の情報処理装置は、この問題を解決するものである。
 すなわち、ソースモデルとターゲットモデルの骨構造が異なっていても、モデル間の各骨の動きの移転や、回転等のパラメータを用いた動きや姿勢の再現処理、すなわちモーション移転を正確に行うことを可能とするものである。
 本開示の情報処理装置は、クラスパラメトリックモデルをソースモデルとターゲットモデルにフィットする処理を行い、各モデルの骨構造だけではなくソースモデルのメッシュの変化をも考慮したモーション移転を行う。
 なお、前述したように、クラスパラメトリックモデルとは、所定のクラスの様々なインスタンスを、パラメータを変更して表すことを可能としたモデルである。
 ソースモデルの姿勢(ポーズ)や動きをターゲットモデルの姿勢や動きに反映させるモーション移転を、本開示の処理、すなわち、クラスパラメトリックモデルを適用して実行した処理例と、従来型のタグ設定によって実行した処理例との比較例を図4に示す。
 図4には、ソースモデル10と、ソースモデル10の姿勢や動きを再現したターゲットモデル21,22を示す例である。
 ターゲットモデル21が、本開示の処理、すなわち、クラスパラメトリックモデルを適用して生成したターゲットモデルである。
 一方、ターゲットモデル22が、従来型のタグ設定によって生成したターゲットモデルである。
 なお、ソースモデル10の骨構造と、ターゲットモデル21,22の骨構造は異なっている。
 図4に示すターゲットモデル21、すなわち、クラスパラメトリックモデルを適用して生成したターゲットモデル21の姿勢は、ソースモデル10により近い姿勢となっているのが分かる。
 一方、従来型のタグ設定によって生成したターゲットモデル22は、顔の向きが、ほぼ正面であり、やや下向きのソースモデル10とは異なる姿勢となっている。
 これは、骨構造の違いにより、タグの対応付けに位置ずれが発生する等の理由に起因するものである。
 図5に、もう一つの例を示す。
 図5も、図4と同様、ソースモデル30と、ソースモデル30の姿勢や動きを再現したターゲットモデル31,32を示す例である。
 ターゲットモデル31が、本開示の処理、すなわち、クラスパラメトリックモデルを適用して生成したターゲットモデルである。
 一方、ターゲットモデル32が、従来型のタグ設定によって生成したターゲットモデルである。
 なお、ソースモデル30の骨構造と、ターゲットモデル31,32の骨構造は異なっている。
 図5に示すターゲットモデル31、すなわち、クラスパラメトリックモデルを適用して生成したターゲットモデル31の姿勢は、ソースモデル30により近い姿勢となっているのが分かる。
 一方、従来型のタグ設定によって生成したターゲットモデル32は、顔の向きが、ほぼ正面であり、やや上向きのソースモデル30とは異なる姿勢となっている。
 これは、骨構造の違いにより、タグの対応付けに位置ずれが発生する等の理由に起因するものである。
  [2.本開示の情報処理装置の構成と処理の詳細について]
 次に、図6以下を参照して、本開示の情報処理装置の構成と処理の詳細について説明する。
 図6を参照して、本開示の情報処理装置100の一構成例について説明する。
 情報処理装置100は、入力データとして、以下の3種類のデータを入力する。
 ソースモデル101、
 クラスパラメトリックモデル102、
 ターゲットモデル103、
 本開示の情報処理装置100は、ソースモデル101のモーションをターゲットモデル103に移転して再現する処理を実行する。
 クラスパラメトリックモデル102は、パラメータの変更により、様々なクラスの様々なインスタンスを表すことが可能なモデルである。クラスパラメトリックモデル102は、形状パラメータと骨構造のパラメータの両方を持つ。クラスパラメトリックモデル102のクラスは例えば人物、四脚動物等である。例えば、人物のクラスパラメトリックモデルを生成するには、予め複数種類の体形の人の3次元形状を取得して、主成分分析の次元削減技術を用いて、人物の形状の空間を数個のパラメータで(基底ベクトルの係数)表す。
 なお、ソースモデル101や、クラスパラメトリックモデル102、およびターゲットモデル103は、様々な3次元モデルを格納した3次元モデルデータベースから取得することが可能である。
 具体的にはゲームキャラクタ等の3次元モデルが利用可能である。ただし、いずれも骨構造情報が属性情報として付加され、利用可能であることが必要である。また、ソースモデル101や、クラスパラメトリックモデル102についてはモーション情報が取得可能であるか、または解析可能であることが必要である。
 なお、モーション情報とは、モデルのモーション(動きや姿勢)を規定する情報であり、例えば骨構造を構成する各骨の配置情報等である。モーション情報は、各骨の配置情報を含み、モーションパラメータとも呼ばれる。骨構造を構成する各骨対応のモーションパラメータによって、そのモデルのモーション(動きや姿勢)が規定される。
 なお、以下に説明する実施例では、人物を処理対象とした実施例について説明する。
 入力データは、例えば図7に示すように、
 ソースモデル101、
 クラスパラメトリックモデル102、
 ターゲットモデル103、
 これら3種類の3次元モデルである。
 例えば、クラス=人物のクラスパラメトリックモデル102は、骨構造Pを持つ。例えば図3に示す骨構造例1、または骨構造例2等の骨構造である。
 これに対して、
 ソースモデル101の骨構造はS、
 ターゲットモデル103の骨構造はTであり、
 P≠S≠T
 である。すなわち、
 ソースモデル101と、クラスパラメトリックモデル102と、ターゲットモデル103の骨構造はそれぞれ異なる骨構造である。
 なお、本開示の情報処理装置100は、ソースモデル101と、ターゲットモデル103の骨構造が異なる場合にも高精度なモーション移転が実行可能となるという効果を奏するものである。ソースモデル101と、クラスパラメトリックモデル102と、ターゲットモデル103の骨構造が全て異なるという条件は必須ではない。
 例えば、ソースモデル101と、クラスパラメトリックモデル102の骨構造が同一である場合や、ターゲットモデル103と、クラスパラメトリックモデル102の骨構造が同一である場合にも本開示の情報処理装置100の処理により、ソースモデル101からターゲットモデル103への高精度なモーション移転が可能となる。
 ただし、前述したように、ソースモデル101とターゲットモデル103の骨構造が異なる場合、ソースモデル101の骨構造から得られるソースモデル101のモーション(姿勢や動き)を示すパラメータを、異なる骨構造を持つターゲットモデル103に正しく反映させることができず、正確なモーション移転を行うことができない。
 図6に示すように、入力データは、
 ソースモデル101の骨構造Sと、モーション情報、
 クラスパラメトリックモデル102の骨構造Pと、形状、モーション情報、
 ターゲットモデル103の骨構造T、
 これらの各データである。
 情報処理装置100のソースモデルメッシュフィッティング部111は、ソースモデル101と、クラスパラメトリックモデル102のメッシュフィッティング処理を行い、ソースモデルインスタンス121を生成する。
 メッシュフィッティングとは、クラスパラメトリックモデル102のパラメータを変更して、入力ソースモデル101に一致するクラスのインスタンスを表す3Dモデル化オブジェクト、すなわちソースモデルインスタンス121を生成する処理である。
 メッシュフィッティング処理は、例えば、クラスパラメトリックモデル102のメッシュ上の特徴点と、入力ソースモデル101のメッシュ上の特徴点間の距離、または、クラスパラメトリックモデル102とソースモデル101のメッシュ間距離、これらの少なくともいずれかをパラメータの変更で最小化するように、クラスパラメトリックモデル102を、入力ソースモデル101にフィットさせる処理を実行する。
 なお、特徴点検出処理や、メッシュ間距離最小化手法は、既存の手法が適用可能である。例えば、特徴点検出処理としてはOpenPose手法、メッシュ間距離最小化手法としてはICP方法等が適用できる。
 ソースモデルメッシュフィッティング部111がメッシュフィッティング処理により実行する具体的な処理は、ソースモデル101の骨構造Sをクラスパラメトリックモデル102の骨構造Pと同じ骨構造Pに変換する処理である。
 なお、この処理により、元々の骨構造Sの入力ソースモデル101のモーション(動きや姿勢)は、骨構造Pのソースモデルインスタンス121に反映され、入力ソースモデル101のモーションと同じモーションを持つ骨構造Pのソースモデルインスタンス121が生成されることになる。
 このように、ソースモデルメッシュフィッティング部111は、ソースモデル101と、クラスパラメトリックモデル102のメッシュフィッティング処理を行い、ソースモデルインスタンス121を生成する。
 ソースモデルメッシュフィッティング部111が生成するソースモデルインスタンス121は、骨構造がクラスパラメトリックモデル102の骨構造Pと同じ骨構造Pを有する。
 また、元のソースモデル101が骨構造Sの下で有していた動き情報は、クラスパラメトリックモデル102の骨構造Pに対応するように変換(正規化)された正規化モーション情報となる。
 一方、ターゲットモデルメッシュフィッティング部112は、ターゲットモデル103と、クラスパラメトリックモデル102を入力して、メッシュフィッティング処理を行い、ターゲットモデルインスタンス122を生成する。
 ターゲットモデルメッシュフィッティング部112は、クラスパラメトリックモデル102のメッシュ上の特徴点と、入力ターゲットモデル103のメッシュ上の特徴点間の距離、または、クラスパラメトリックモデル102とターゲットモデル103のメッシュ間距離、これらの少なくともいずれかをパラメータの変更で最小化するように、クラスパラメトリックモデル102を、入力ターゲットモデル103にフィットさせる処理を実行する。
 ターゲットモデルメッシュフィッティング部112におけるメッシュフィッティング処理によって、ターゲットモデル103の骨構造Tが、クラスパラメトリックモデル102の骨構造Pと同じ骨構造Pに変換される。
 図7の中段に、ソースモデルメッシュフィッティング部111が生成するソースモデルインスタンス121と、ターゲットモデルメッシュフィッティング部112が生成するターゲットモデルインスタンス122の例を示す。
 ソースモデルインスタンス121と、ターゲットモデルインスタンス122は、いずれも同じ骨構造P、すなわち、クラスパラメトリックモデル102の骨構造Pと同じ骨構造を有する。
 ソースモデルメッシュフィッティング部111が生成するソースモデルインスタンス121と、
 ターゲットモデルメッシュフィッティング部112が生成するターゲットモデルインスタンス122、
 これら2つのインスタンスは、モーション移転部123に入力される。
 モーション移転部123は、ソースモデルインスタンス121の姿勢、モーションを、ターゲットモデルインスタンス122に移転するモーション移転処理を実行して、モーション移転ターゲットモデルインスタンス124を生成する。
 ソースモデルインスタンス121と、ターゲットモデルインスタンス122は、いずれも同じ骨構造Pを有しており、ソースモデルインスタンス121の骨構造の解析によって得られるパラメータ、例えば関節のや回転量を示すパラメータを取得して、ターゲットモデルインスタンス122の骨構造に反映させることで、ソースターゲット間の正確な姿勢、動きの移転処理、すなわちモーション移転処理を行うことができる。なお、モーション移転処理に際しては、例えば、手や足等の位置調整のための処理として逆運動学の数式を用いた解析処理により、手や足等の微妙な位置や角度の調整を行う構成としてもよい。
 このように、モーション移転部123は、ソースモデルインスタンス121の姿勢、モーションを、ターゲットモデルインスタンス122に移転する処理を行い、この処理結果として、モーション移転ターゲットモデルインスタンス124を生成する。
 モーション移転部123の生成したモーション移転ターゲットモデルインスタンス124の例を図7の下段に示す。
 モーション移転ターゲットモデルインスタンス124は、クラスパラメトリックモデル102の骨構造Pと同じ骨構造を有する。
 また、姿勢、動きは、ソースモデルインスタンス121の姿勢、動きを反映した姿勢、動き、すなわちリターゲット正規化モーションを有する。
 このモーション移転部123の生成したモーション移転ターゲットモデルインスタンス124を最終出力としてもよいが、このモーション移転ターゲットモデルインスタンス124は、入力データであるターゲットモデル103の骨構造Tと、異なる骨構造Pを有する。
 従って、オプション処理として、骨構造Pを有するモーション移転ターゲットモデルインスタンス124を、入力データであるターゲットモデル103の骨構造Tに戻す処理を行ってもよい。
 この処理を行うのが、モーション移転ターゲットモデル変換部125である。
 モーション移転ターゲットモデル変換部125は、モーション移転部123が生成したモーション移転ターゲットモデルインスタンス124と、入力データであるターゲットモデル103を入力する。
 モーション移転ターゲットモデル変換部125は、これら2つのモデルを適用して、モーション移転ターゲットモデルインスタンス124の骨構造変換処理を実行して、モーション移転ターゲットモデル126を生成する。
 モーション移転ターゲットモデル126は、入力データであるターゲットモデル103の骨構造Tを有する。
 モーション移転ターゲットモデル変換部125が実行する具体的な処理は、モーション移転ターゲットモデルインスタンス124のメッシュ上の特徴点と、入力ターゲットモデル103のメッシュ上の特徴点間の距離、または、モーション移転ターゲットモデルインスタンス124と入力ターゲットモデル103のメッシュ間距離、これらの少なくともいずれかを入力ターゲットモデル103の骨構造Tのパラメータの変更で最小化するように、入力ターゲットモデル103を、モーション移転ターゲットモデルインスタンス124にフィットさせる処理である。すなわち、モーション移転ターゲットモデルインスタンス124との同一のモーションを持つモーション移転ターゲットモデル126を生成する。
 この結果として、モーション移転ターゲットモデル126が生成される。
 モーション移転ターゲットモデル126は、入力データであるターゲットモデル103の骨構造Tを有し、ソースモデル101の姿勢、動きを反映した姿勢、動きを有する3次元モデルとなる。
 すなわち、ソースモデルの姿勢、動きを高精度に再現したターゲットモデルが生成される。
 なお、データベース130には、入力データとしてのソースモデル101の骨構造Sと、モーションを示すパラメータと、モーション移転ターゲットモデル126の骨構造Tと、モーションを示すパラメータの対応データが格納される。
 モーションを示すパラメータは、具体的には、例えば、骨構造を構成する各骨の配置を示すパラメータである。このパラメータは、モデルのモーション(動き、姿勢)に応じて異なる値となる。
 データベース130には、3次元モデル自体は格納しても格納しなくてもよい。
 図8を参照して、データベース130に格納されるデータの例について説明する。
 図8に示す(a),(b),(c)・・・の各データがデータベース130に格納されるデータの例である。
 図8の下部に示す3次元モデルは参考データであり、データベースには格納されない。
 データベース130には、様々な動きに対応するソースモデル、およびターゲットモデルの(骨構造、モーション)情報を示すデータが対応付けて格納される。
 このデータベース130の格納データは、その後のモーション移転処理に利用される。
 データベース130格納データを利用したモーション移転処理の具体例については、後段で説明する。
 次に、図9に示すフローチャートを参照して、本開示の情報処理装置100が実行する処理のシーケンスについて説明する。
 なお、図9に示すフローチャートに従った処理は、例えば、情報処理装置100の記憶部に格納されたプログラムに従って、プログラム実行機能を持つCPU等を備えたコントローラからなるデータ処理部の制御の下に実行される。
 図9に示すフローの各ステップの処理について、順次、説明する。
  (ステップS101)
 まず、情報処理装置100は、ステップS101において、入力ソースモデルの骨構造とモーション情報をDBに保存する。
 この処理は、図6に示す入力データであるソースモデル101の(骨構造、モーション)情報をデータベース130に格納する処理である。
 モーション情報は、具体的には、例えば、骨構造を構成する各骨の配置を示すパラメータである。このパラメータは、ソースモデルのモーション(動き、姿勢)に応じて異なる値となる。
  (ステップS102)
 次に、情報処理装置100は、ステップS102において、クラスパラメトリックモデルを入力ソースモデルにフィットさせるメッシュフィッティングを実行して、ソースモデルインスタンスを生成する。
 この処理は、図6に示すソースモデルメッシュフィッティング部111の実行する処理である。
 ソースモデルメッシュフィッティング部111は、ソースモデル101と、クラスパラメトリックモデル102のメッシュフィッティング処理を行い、ソースモデルインスタンス121を生成する。
 例えば、クラスパラメトリックモデル102のメッシュ上の特徴点と、入力ソースモデル101のメッシュ上の特徴点間の距離、または、クラスパラメトリックモデル102とソースモデル101のメッシュ間距離、これらの少なくともいずれかをパラメータの変更で最小化するように、クラスパラメトリックモデル102を、入力ソースモデル101にフィットさせる処理を実行する。
 この処理により、元々の骨構造Sの入力ソースモデル101のモーションは、骨構造Pのソースモデルインスタンス121に反映され、入力ソースモデル101のモーションと同じモーションを持つ骨構造Pのソースモデルインスタンス121が生成される。
  (ステップS103)
 次に、情報処理装置100は、ステップS103において、クラスパラメトリックモデルを入力ターゲットモデルにフィットさせるメッシュフィッティングを実行して、
ターゲットモデルインスタンスを生成する。
 この処理は、図6に示すターゲットモデルメッシュフィッティング部112の実行する処理である。
 ターゲットモデルメッシュフィッティング部112は、クラスパラメトリックモデル102のメッシュ上の特徴点と、入力ターゲットモデル103のメッシュ上の特徴点間の距離、または、クラスパラメトリックモデル102とターゲットモデル103のメッシュ間距離、これらの少なくともいずれかをパラメータの変更で最小化するように、クラスパラメトリックモデル102を、入力ターゲットモデル103にフィットさせる処理を実行する。
 この処理により、ターゲットモデル103の骨構造Tが、クラスパラメトリックモデル102の骨構造Pと同じ骨構造Pに変換される。
  (ステップS104)
 次に、情報処理装置100は、ステップS104において、ソースモデルインスタンスからターゲットモデルインスタンスにモーションを移転して、モーション移転ターゲットモデルインスタンスを生成する。
 この処理は、図6に示すモーション移転部123が実行する処理である。
 モーション移転部123は、ソースモデルインスタンス121の姿勢、モーションを、ターゲットモデルインスタンス122に移転するモーション移転処理を実行して、モーション移転ターゲットモデルインスタンス124を生成する。
 ソースモデルインスタンス121と、ターゲットモデルインスタンス122は、いずれも同じ骨構造Pを有しており、ソースモデルインスタンス121の骨構造の解析によって得られるパラメータ、例えば関節の位置や回転量を示すパラメータを取得して、ターゲットモデルインスタンス122の骨構造に反映させることで、ソースターゲット間の正確な姿勢、動きの移転処理、すなわちモーション移転処理を行うことができる。
  (ステップS105)
 次に、情報処理装置100は、ステップS105において、入力ターゲットモデルをターゲットインスタンスにフィットさせるメッシュフィッティングを実行し、ターゲットインスタンスの骨構造を入力ターゲットモデルの骨構造に再変換して、モーション移転ターゲットモデルを生成する。
 この処理は、図6に示すモーション移転ターゲットモデル変換部125が実行する処理である。
 先に図6を参照して説明したように、この処理はオプション処理である。
 このステップS105の処理は、骨構造Pを有するモーション移転ターゲットモデルインスタンス124を、入力データであるターゲットモデル103の骨構造Tに戻す処理である。
 モーション移転ターゲットモデル変換部125は、モーション移転部123が生成したモーション移転ターゲットモデルインスタンス124と、入力データであるターゲットモデル103を入力する。
 モーション移転ターゲットモデル変換部125は、これら2つのモデルを適用して、モーション移転ターゲットモデルインスタンス124の骨構造変換処理を実行して、モーション移転ターゲットモデル126を生成する。
 モーション移転ターゲットモデル126は、入力データであるターゲットモデル103の骨構造Tを有する。
  (ステップS106)
 最後に、情報処理装置100は、ステップS106において、モーション移転ターゲットモデルの骨構造とモーション情報をDBに保存する。
 この処理は、図6に示すモーション移転ターゲットモデル変換部125が、最終的なモーション移転ターゲット3次元モデルとして生成したモーション移転ターゲットモデル126の(骨構造、モーション)情報をデータベース130に格納する処理である。
 モーション情報は、具体的には、例えば、骨構造を構成する各骨の配置を示すパラメータである。このパラメータは、ターゲットモデルのモーション(動き、姿勢)に応じて異なる値となる。
 このデータベース格納処理の結果として、先に図8を参照して説明したデータがデータベース130に格納される。
 すなわち、データベース130には、入力データとしてのソースモデル101の骨構造Sと、モーションを示すパラメータと、モーション移転ターゲットモデル126の骨構造Tと、モーションを示すパラメータの対応データが格納される。
 このデータベース130の格納データは、その後のモーション移転処理に利用される。
 なお、上述した実施例では、1つのソースモデルを用いて、その1つのソースモデルから取得した全てのモーションを1つのターゲットモデルに移転するモーション移転処理を行う実施例について説明したが、例えば、ソースモデルの一部のモーションのみを、ターゲットモデルに移転するモーション移転処理を実行する構成としてもよい。
 さらに、複数のソースモデルから異なる部分の部分的モーションを取得して、ターゲットモデルの各部分に前記部分的モーションを移転するモーション移転処理を実行する構成としてもよい。
 また、複数のソースモデルから取得される複数のモーションに対して、ユーザの設定した重み(係数)による合成処理、または関数を用いた合成処理によって得られる合成モーションをターゲットモデルに移転するモーション移転処理を実行することも可能である。
  [3.データベースに格納したソースターゲットのモーション対応情報を利用したモーション移転処理例について]
 次に、実施例2として、データベースに格納したソースターゲットのモーション対応情報を利用したモーション移転処理例について説明する。
 上述した実施例では、クラスパラメトリックモデルを利用して骨構造の異なるソースモデルからターゲットモデルへのモーション移転を実行する構成について説明した。
 上述した実施例に従ったソースモデルからターゲットモデルへのモーション移転処理を、数多く実行すると、データベース130には、様々なモーションに対応するソースモデルとターゲットモデルの(骨構造、モーション)情報の対応データが蓄積される。
 以下に示す第2実施例は、このデータベースに格納されたデータを利用することで、骨構造の異なるソースモデルからターゲットモデルへのモーション移転を実行する実施例である。
 本実施例では、クラスパラメトリックモデルを利用することなく、骨構造の異なるソースモデルからターゲットモデルへのモーション移転を実行することが可能となる。
 図10は、本実施例の情報処理装置200の一構成例を示す図である。
 図10を参照して、本実施例の情報処理装置200の構成と実行する処理について説明する。
 情報処理装置200は、入力データとして、以下の2種類のデータを入力する。
 ソースモデル101、
 ターゲットモデル103、
 情報処理装置200は、ソースモデル101のモーションをターゲットモデル103に移転して再現する処理を実行する。
 データベース130は、先に図6を参照して説明した情報処理装置100のデータベース130である。
 データベース130には、先に図8を参照して説明したように、様々なモーションに対応するソースモデルとターゲットモデルの(骨構造、モーション)情報の対応データが格納されている。
 モーション情報は、具体的には、例えば、骨構造を構成する各骨の配置を示すパラメータである。このパラメータは、モデルのモーション(動き、姿勢)に応じて異なる値となる。
 図10に示すモーションパラメータ変換関数算出部133は、データベース130から、ソースモデルとターゲットモデルの(骨構造、モーション)情報の対応データを取り出す。
 図10に示すソースモデルモーション情報131と、リターゲットモーション情報132である。
 なお、これらの情報はデータベースに同じ動き単位のソース/ターゲット対応動き情報として格納されている。
 先に図8を参照して説明した(a),(b),(c)等の対応データである。
 モーションパラメータ変換関数算出部133は、データベース130から、ソースモデルとターゲットモデルの(骨構造、モーション)情報の対応データを、多数、取得する。
 モーションパラメータ変換関数算出部133は、これらの対応データに基づいて、ターゲットの骨構造のどの部分がソースの骨構造のどの部分(または複数の部分の組み合わせ)に対応しているかを示す関数、すなわち「モーションパラメータ変換関数」を算出する。
 図10に示すモーションパラメータ変換関数134を生成する。
 モーションパラメータ変換関数Fは、ソースモデルのモーションを示すモーションパラメータPsを入力して、ターゲットモデルのモーションを示すモーションパラメータPtを算出する関数である。すなわち、
 Pt=F(Ps)・・・(式1)
 上記(式1)に示す関数Fを算出する。
 すなわち、様々な動きを持つソースモデル101の動き情報パラメータ(Ps)を、上記のモーションパラメータ変換関数Fに基づいて変換することで、ターゲットモデルのモーションを示すモーションパラメータPtを算出することができる。
 このターゲットモデルのモーションを示すモーションパラメータPtは、ソースモデルの動き情報パラメータ(Ps)によって規定されるソースモデルのモーションと同じ動きをターゲットモデルに再現させるためモーションパラメータである。
 図10に示すように、モーション移転元であるソースモデル101、すなわち入力データ中のソースモデル101から動き情報パラメータPsを取得して、モーションパラメータ変換関数F,134に基づく変換処理を行い、ターゲットモデルのモーションを示すモーションパラメータPtを算出する。
 この算出したモーションパラメータPtを、入力データであるターゲットモデル103に適用することで、ソースモデルのモーションと同じ動きを持つターゲットモデル、すなわち、図10に示すモーション移転ターゲットモデル150を生成することができる。
 なお、モーションパラメータ変換関数Fの算出方法としては、様々な方法が適用可能である。例えば、ソースとターゲットの骨構造が異なることを前提とした線形回帰を用いて関数を算出することが可能である。
 例えば、データベースに格納されているあるモーションに対応するソースモデルの骨構造のパラメータを、
 S={si|i∈ソースの骨}、
 とする。
 s1,s2,s3・・・は、例えば、データベースに格納されているあるモーションに対応するソースモデルの骨各々に対応するパラメータである。骨構造パラメータをユークリッド変換として表すときのi番目の係数である。この係数によって、各骨の配置(位置、角度等)が決定される。
 さらに、データベースに上記ソースに対応付けて格納されているターゲットの骨構造のパラメータ、すなわち、上記ソースと同じ動きを示すターゲットの骨構造のパラメータを、
 T={ti|i∈ターゲットの骨}、
 とする。
 t1,t2,t3・・・は、データベースに格納されているターゲットモデルの骨各々に対応するパラメータである。骨構造パラメータをユークリッド変換として表すときのi番目の係数である。この係数によって、各骨の配置(位置、角度等)が決定される。
 ここで、ターゲットの骨構造のi番目のパラメータ係数tiを、以下に示す(式2)、すなわち、
 ti=Σjcijsj・・・(式2)
 ただし、cijは係数、
 上記(式2)に示すように、
 tiをs1,s2,・・・,sn、の線形結合として表現する。
 ただし、nは、ソースの骨構造の骨の数であり、j=1~nである。
 先に図8を参照して説明したように、データベース130には、多数の異なるモーションに対応するソースとターゲットのモーションパラメータのペアデータが格納されている。
 モーションパラメータ変換関数算出部133は、これらのデータベース130に格納された多数のペアデータを用いて、上記(式2)の係数cijを推定する。
 例えば、線形最小二乗法を利用して推定することが可能である。
 このように、ターゲットの骨構造のi番目のパラメータ係数tiに対応する係数cijが推定できる。
 これを、ターゲットの骨構造のすべての骨、すなわち
 i=1~m、
 ただし、mはターゲットモデルの骨構造を構成する骨の数、
 について、全て実行し、
 i=1~m、全てに対応する係数cijを算出する。
 このようにして算出した、i=1~m、全てに対応する係数cijを用いて、先に説明したモーションパラメータ変換関数F、すなわち、
 Pt=F(Ps)・・・(式1)
 上記(式1)に示す関数Fを算出する。
 この変換関数Fは、ソースモデルのモーションを示すモーションパラメータPsを入力して、ターゲットモデルのモーションを示すモーションパラメータPtを算出する関数である。
 モーションパラメータ変換関数算出部133は、このようにして、データベース130から取得したソースモデルとターゲットモデルの(骨構造、モーション)情報の対応データを用いて、上記(式1)に示す関数、すなわちモーションパラメータ変換関数を算出する。
 このように本実施例2においては、データベース130に格納されたデータを利用することで、骨構造の異なるソースモデルからターゲットモデルへのモーション移転を行うための変換関数、すなわち、モーションパラメータ変換関数を算出し、算出した関数を適用して、骨構造の異なるソースモデルからターゲットモデルへのモーション移転を実行する。
 次に、図11に示すフローチャートを参照して、本実施例の情報処理装置200が実行する処理のシーケンスについて説明する。
 なお、図11に示すフローチャートに従った処理は、例えば、情報処理装置200の記憶部に格納されたプログラムに従って、プログラム実行機能を持つCPU等を備えたコントローラからなるデータ処理部の制御の下に実行される。
 図11に示すフローの各ステップの処理について、順次、説明する。
  (ステップS201)
 まず、情報処理装置200は、ステップS201において、データベースに格納されたソースモデルのモーション情報と、ターゲットモデルのモーション情報を取得する。
 この処理は図10に示すモーションパラメータ変換関数算出部133が実行する処理である。
 モーションパラメータ変換関数算出部133は、データベース130から、ソースモデルとターゲットモデルのモーション情報の対応データを取り出す。
 モーション情報は、具体的には、例えば、骨構造を構成する各骨の配置を示すパラメータである。このパラメータは、モデルのモーション(動き、姿勢)に応じて異なる値となる。
  (ステップS202)
 次に、情報処理装置200は、ステップS202において、データベースから取得したパラメータ(モーションパラメータ)を用いて、ソースモデルのモーションを、ターゲットモデルのモーションに変換する関数(モーションパラメータ変換関数)を算出する。
 この処理も図10に示すモーションパラメータ変換関数算出部133が実行する処理である。
 モーションパラメータ変換関数算出部133は、ソースモデルのモーションを示すモーションパラメータPsを入力して、ターゲットモデルのモーションを示すモーションパラメータPtを算出する関数、すなわち、以下に示すモーションパラメータ変換関数を算出する。
 Pt=F(Ps)・・・(式1)
 様々な動きを持つソースモデルの動き情報パラメータ(Ps)を、上記のモーションパラメータ変換関数Fに基づいて変換することで、ターゲットモデルのモーションを示すモーションパラメータPtを算出することができる
  (ステップS203)
 次に、情報処理装置200は、ステップS203において、モーションパラメータ変換関数を適用して、ソースモデルのモーションパラメータを、ターゲットモデル対応のモーションパラメータに変換し、変換パラメータをターゲットモデルに適用する。この処理によって、ソースモデルのモーションを、ターゲットモデルに移転する。
 この処理は、図6に示すモーションパラメータ変換関数134を適用した処理である。
 図10に示すように、モーション移転元であるソースモデル101、すなわち入力データ中のソースモデル101から動き情報パラメータPsを取得して、モーションパラメータ変換関数F,134に基づくパラメータ変換処理を行い、ターゲットモデルのモーションを示すモーションパラメータPtを算出する。
 この算出したモーションパラメータPtを、入力データであるターゲットモデル103に適用することで、ソースモデルのモーションと同じ動きを持つターゲットモデル、すなわち、図10に示すモーション移転ターゲットモデル150を生成する。
 このように本実施例2においては、データベース130に格納されたデータを利用することで、骨構造の異なるソースモデルからターゲットモデルへのモーション移転を行うための変換関数、すなわち、モーションパラメータ変換関数を算出し、算出関数を適用して、骨構造の異なるソースモデルからターゲットモデルへのモーション移転を実行する。
  [4.情報処理装置のハードウェア構成例について]
 次に、図12を参照して本開示の情報処理装置のハードウェア構成例について説明する。
 本開示の情報処理装置は、例えば、具体的には、PC(Personal Computer)等の情報処理装置によって構成することが可能である。
 図12に示すように情報処理装置300は、コントローラ301、ROM(Read Only Memory)302、RAM(Random Access Memory)303、入出力インタフェース305、および、これらを互いに接続するバス304を備える。
 コントローラ301は、必要に応じてRAM303等に適宜アクセスし、各種演算処理を行いながら情報処理装置300の各ブロック全体を統括的に制御する。コントローラ301は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等であってもよい。ROM302は、コントローラ301に実行させるOS、プログラムや各種パラメータなどのファームウェアが固定的に記憶されている不揮発性のメモリである。RAM303は、コントローラ301の作業用領域等として用いられ、OS、実行中の各種アプリケーション、処理中の各種データを一時的に保持する。
 入出力インタフェース305には、入力部306、出力部307、記憶部308、通信部309、および、リムーバブルメディア311を装着可能なドライブ310等が接続される。
 なお、入出力インタフェース105は、これらの各要素の他、USB(Universal Serial Bus)端子やIEEE端子等を介して外部周辺機器と接続可能に構成されてもよい。
 入力部306は、例えば、撮像画像の入力処理や、ユーザの操作情報等を入力可能な入力部である。入力部306が撮像部を有する構成としてもよい。
 入力部306には、例えばマウス等のポインティングデバイス、キーボード、タッチパネル、その他の入力装置も含まれる。
 出力部307は、例えば表示部に対するデータ出力を行う。出力部307が表示部を有する構成としてもよい。
 記憶部308は、例えばHDD(Hard Disk Drive)や、フラッシュメモリ(SSD;Solid State Drive)、その他の固体メモリ等の不揮発性メモリである。記憶部308には、OSや各種アプリケーション、各種データが記憶される。記憶部308は、また、入力画像や、画像情報、生成した出力画像等の記憶領域としても利用される。
 通信部309は、例えばEthernet(登録商標)用のNIC(Network Interface Card)であり、ネットワークを介した通信処理を担う。
 ドライブ310は、リムーバブルメディア311を利用したデータ記録、再生処理に利用される。
 リムーバブルメディア311は、例えばBD、DVD、CD、HDD、フラッシュメモリ等によって構成される。
  [5.本開示の構成のまとめ]
 以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
 なお、本明細書において開示した技術は、以下のような構成をとることができる。
 (1) 3次元モデル間のモーション移転を実行するデータ処理部を有し、
 前記データ処理部は、
 モーション移転元のソースモデルの骨構造Sを、骨構造Pに変換する処理と、
 モーション移転先のターゲットモデルの骨構造Tを、前記骨構造Pに変換する処理と、
 骨構造Pを持つソースモデルのモーションを、骨構造Pを持つターゲットモデルに移転するモーション移転処理を実行する情報処理装置。
 (2) 前記データ処理部は、さらに、
 前記モーション移転処理実行後のターゲットモデルの骨構造Pを骨構造Tに再変換する(1)に記載の情報処理装置。
 (3) 前記データ処理部は、
 モーション移転元のソースモデルの骨構造Sを、骨構造Pに変換したソースモデルインスタンスと、
 モーション移転先のターゲットモデルの骨構造Tを、前記骨構造Pに変換したターゲットモデルインスタンスを生成し、
 生成した同一骨構造を有するソースモデルインスタンスと、ターゲットモデルインスタンスとの間で、モーション移転処理を実行する(1)または(2)に記載の情報処理装置。
 (4) 前記骨構造Pは、様々なカテゴリに対応するクラス単位の3次元モデルであるクラスパラメトリックモデルの骨構造である(1)~(3)いずれかに記載の情報処理装置。
 (5) 前記データ処理部は、
 前記クラスパラメトリックモデルと前記ソースモデルのメッシュ上の特徴点間距離、または、メッシュ間距離の少なくともいずれかを最小化するように、前記クラスパラメトリックモデルを、前記ソースモデルにフィットさせるメッシュフィッティング処理を実行して、前記ソースモデルの骨構造Sを、骨構造Pに変換する(4)に記載の情報処理装置。
 (6) 前記データ処理部は、
 前記クラスパラメトリックモデルと前記ターゲットモデルのメッシュ上の特徴点間距離、または、メッシュ間距離の少なくともいずれかを最小化するように、前記クラスパラメトリックモデルを、前記ターゲットモデルにフィットさせるメッシュフィッティング処理を実行して、前記ターゲットモデルの骨構造Tを、骨構造Pに変換する(4)または(5)に記載の情報処理装置。
 (7) 前記データ処理部は、
 前記ソースモデルの骨構造とモーション情報、および、
 モーション移転後のターゲットモデルの骨構造とモーション情報とを対応付けたデータをデータベースに記録する処理を実行する(1)~(6)いずれかに記載の情報処理装置。
 (8) 前記データ処理部は、
 前記ソースモデルの一部のモーションのみを、前記ターゲットモデルに移転するモーション移転処理を実行する(1)~(7)いずれかに記載の情報処理装置。
 (9) 前記データ処理部は、
 複数のソースモデルから異なる部分の部分的モーションを取得して、前記ターゲットモデルの各部分に前記部分的モーションを移転するモーション移転処理を実行する(1)~(7)いずれかに記載の情報処理装置。
 (10) 前記データ処理部は、
 複数のソースモデルから取得される複数のモーションに対して、ユーザの設定した重み(係数)による合成処理、または関数を用いた合成処理によって得られる合成モーションを前記ターゲットモデルに移転するモーション移転処理を実行する(1)~(7)いずれかに記載の情報処理装置。
 (11) 3次元モデル間のモーション移転を実行するデータ処理部を有し、
 前記データ処理部は、
 モーションパラメータ変換関数Fを用いてソースモデルのモーションパラメータを、ターゲットモデル対応のモーションパラメータに変換し、変換パラメータをターゲットモデルに適用して、ソースモデルのモーションを、前記ソースモデルと異なる骨構造を持つターゲットモデルに移転するモーション移転処理を実行する情報処理装置。
 (12) 前記データ処理部は、
 データベースから、同一モーションを有するソースモデルとターゲットモデルのモーションを規定するモーションパラメータを取得し、
 取得したモーションパラメータに基づいて、ソースモデルのモーションを示すモーションパラメータPsを入力して、ターゲットモデルのモーションを示すモーションパラメータPtを算出する前記モーションパラメータ変換関数Fを算出する(11)に記載の情報処理装置。
 (13) 情報処理装置において実行する情報処理方法であり、
 前記情報処理装置は、
 3次元モデル間のモーション移転を実行するデータ処理部を有し、
 前記データ処理部が、
 モーション移転元のソースモデルの骨構造Sを、骨構造Pに変換する処理と、
 モーション移転先のターゲットモデルの骨構造Tを、前記骨構造Pに変換する処理と、
 骨構造Pを持つソースモデルのモーションを、骨構造Pを持つターゲットモデルに移転するモーション移転処理を実行する情報処理方法。
 (14) 情報処理装置において実行する情報処理方法であり、
 前記情報処理装置は、
 3次元モデル間のモーション移転を実行するデータ処理部を有し、
 前記データ処理部が、
 モーションパラメータ変換関数Fを用いてソースモデルのモーションパラメータを、ターゲットモデル対応のモーションパラメータに変換し、変換パラメータをターゲットモデルに適用して、ソースモデルのモーションを、前記ソースモデルと異なる骨構造を持つターゲットモデルに移転するモーション移転処理を実行する情報処理方法。
 (15) 情報処理装置において情報処理を実行させるプログラムであり、
 前記情報処理装置は、
 3次元モデル間のモーション移転を実行するデータ処理部を有し、
 前記プログラムは、前記データ処理部に、
 モーション移転元のソースモデルの骨構造Sを、骨構造Pに変換する処理と、
 モーション移転先のターゲットモデルの骨構造Tを、前記骨構造Pに変換する処理と、
 骨構造Pを持つソースモデルのモーションを、骨構造Pを持つターゲットモデルに移転するモーション移転処理を実行させるプログラム。
 (16) 情報処理装置において情報処理を実行させるプログラムであり、
 前記情報処理装置は、
 3次元モデル間のモーション移転を実行するデータ処理部を有し、
 前記プログラムは、前記データ処理部に、
 モーションパラメータ変換関数Fを用いてソースモデルのモーションパラメータを、ターゲットモデル対応のモーションパラメータに変換し、変換パラメータをターゲットモデルに適用して、ソースモデルのモーションを、前記ソースモデルと異なる骨構造を持つターゲットモデルに移転するモーション移転処理を実行させるプログラム。
 なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LAN(Local Area Network)、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
 また、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
 以上、説明したように、本開示の一実施例の構成によれば、骨構造が異なるソースターゲット間で、高精度なモーション移転処理を実行可能とした装置、方法が実現される。
 具体的には、例えば、モーション移転元のソースモデルの骨構造Sを、骨構造Pに変換する処理と、モーション移転先のターゲットモデルの骨構造Tを、骨構造Pに変換する処理と、骨構造Pを持つソースモデルのモーションを、骨構造Pを持つターゲットモデルに移転するモーション移転処理を実行する。データ処理部は、モーション移転元のソースモデルの骨構造Sを骨構造Pに変換したソースモデルインスタンスと、モーション移転先のターゲットモデルの骨構造Tを骨構造Pに変換したターゲットモデルインスタンスを生成し、生成した同一骨構造を有するインスタンス間で、モーション移転処理を実行する。
 本構成により、骨構造が異なるソースターゲット間で、高精度なモーション移転処理を実行可能とした装置、方法が実現される。
 100 情報処理装置
 101 ソースモデル
 102 クラスバラメトリックモデル
 103 ターゲットモデル
 111 ソースモデルメッシュフィッティング部
 112 ターゲットモデルメッシュフィッティング部
 121 ソースモデルインスタンス
 122 ターゲットモデルインスタンス
 123 モーション移転部
 124 モーション移転ターゲットモデルインスタンス
 125 モーション移転ターゲットモデル変換部
 126 モーション移転ターゲットモデル
 130 データベース
 131 ソースモデルモーション情報
 132 ターゲットモデルモーション情報
 133 モーションパラメータ変換関数算出部
 134 モーションパラメータ変換関数
 150 モーション移転ターゲットモデル
 200 情報処理装置
 300 情報処理装置
 301 コントローラ
 302 ROM
 303 RAM
 304 バス
 305 入出力インタフェース
 306 入力部
 307 出力部
 308 記憶部
 309 通信部
 310 ドライブ
 311 リムーバブルメディア

Claims (16)

  1.  3次元モデル間のモーション移転を実行するデータ処理部を有し、
     前記データ処理部は、
     モーション移転元のソースモデルの骨構造Sを、骨構造Pに変換する処理と、
     モーション移転先のターゲットモデルの骨構造Tを、前記骨構造Pに変換する処理と、
     骨構造Pを持つソースモデルのモーションを、骨構造Pを持つターゲットモデルに移転するモーション移転処理を実行する情報処理装置。
  2.  前記データ処理部は、さらに、
     前記モーション移転処理実行後のターゲットモデルの骨構造Pを骨構造Tに再変換する請求項1に記載の情報処理装置。
  3.  前記データ処理部は、
     モーション移転元のソースモデルの骨構造Sを、骨構造Pに変換したソースモデルインスタンスと、
     モーション移転先のターゲットモデルの骨構造Tを、前記骨構造Pに変換したターゲットモデルインスタンスを生成し、
     生成した同一骨構造を有するソースモデルインスタンスと、ターゲットモデルインスタンスとの間で、モーション移転処理を実行する請求項1に記載の情報処理装置。
  4.  前記骨構造Pは、様々なカテゴリに対応するクラス単位の3次元モデルであるクラスパラメトリックモデルの骨構造である請求項1に記載の情報処理装置。
  5.  前記データ処理部は、
     前記クラスパラメトリックモデルと前記ソースモデルのメッシュ上の特徴点間距離、または、メッシュ間距離の少なくともいずれかを最小化するように、前記クラスパラメトリックモデルを、前記ソースモデルにフィットさせるメッシュフィッティング処理を実行して、前記ソースモデルの骨構造Sを、骨構造Pに変換する請求項4に記載の情報処理装置。
  6.  前記データ処理部は、
     前記クラスパラメトリックモデルと前記ターゲットモデルのメッシュ上の特徴点間距離、または、メッシュ間距離の少なくともいずれかを最小化するように、前記クラスパラメトリックモデルを、前記ターゲットモデルにフィットさせるメッシュフィッティング処理を実行して、前記ターゲットモデルの骨構造Tを、骨構造Pに変換する請求項4に記載の情報処理装置。
  7.  前記データ処理部は、
     前記ソースモデルの骨構造とモーション情報、および、
     モーション移転後のターゲットモデルの骨構造とモーション情報とを対応付けたデータをデータベースに記録する処理を実行する請求項1に記載の情報処理装置。
  8.  前記データ処理部は、
     前記ソースモデルの一部のモーションのみを、前記ターゲットモデルに移転するモーション移転処理を実行する請求項1に記載の情報処理装置。
  9.  前記データ処理部は、
     複数のソースモデルから異なる部分の部分的モーションを取得して、前記ターゲットモデルの各部分に前記部分的モーションを移転するモーション移転処理を実行する請求項1に記載の情報処理装置。
  10.  前記データ処理部は、
     複数のソースモデルから取得される複数のモーションに対して、ユーザの設定した重み(係数)による合成処理、または関数を用いた合成処理によって得られる合成モーションを前記ターゲットモデルに移転するモーション移転処理を実行する請求項1に記載の情報処理装置。
  11.  3次元モデル間のモーション移転を実行するデータ処理部を有し、
     前記データ処理部は、
     モーションパラメータ変換関数Fを用いてソースモデルのモーションパラメータを、ターゲットモデル対応のモーションパラメータに変換し、変換パラメータをターゲットモデルに適用して、ソースモデルのモーションを、前記ソースモデルと異なる骨構造を持つターゲットモデルに移転するモーション移転処理を実行する情報処理装置。
  12.  前記データ処理部は、
     データベースから、同一モーションを有するソースモデルとターゲットモデルのモーションを規定するモーションパラメータを取得し、
     取得したモーションパラメータに基づいて、ソースモデルのモーションを示すモーションパラメータPsを入力して、ターゲットモデルのモーションを示すモーションパラメータPtを算出する前記モーションパラメータ変換関数Fを算出する請求項11に記載の情報処理装置。
  13.  情報処理装置において実行する情報処理方法であり、
     前記情報処理装置は、
     3次元モデル間のモーション移転を実行するデータ処理部を有し、
     前記データ処理部が、
     モーション移転元のソースモデルの骨構造Sを、骨構造Pに変換する処理と、
     モーション移転先のターゲットモデルの骨構造Tを、前記骨構造Pに変換する処理と、
     骨構造Pを持つソースモデルのモーションを、骨構造Pを持つターゲットモデルに移転するモーション移転処理を実行する情報処理方法。
  14.  情報処理装置において実行する情報処理方法であり、
     前記情報処理装置は、
     3次元モデル間のモーション移転を実行するデータ処理部を有し、
     前記データ処理部が、
     モーションパラメータ変換関数Fを用いてソースモデルのモーションパラメータを、ターゲットモデル対応のモーションパラメータに変換し、変換パラメータをターゲットモデルに適用して、ソースモデルのモーションを、前記ソースモデルと異なる骨構造を持つターゲットモデルに移転するモーション移転処理を実行する情報処理方法。
  15.  情報処理装置において情報処理を実行させるプログラムであり、
     前記情報処理装置は、
     3次元モデル間のモーション移転を実行するデータ処理部を有し、
     前記プログラムは、前記データ処理部に、
     モーション移転元のソースモデルの骨構造Sを、骨構造Pに変換する処理と、
     モーション移転先のターゲットモデルの骨構造Tを、前記骨構造Pに変換する処理と、
     骨構造Pを持つソースモデルのモーションを、骨構造Pを持つターゲットモデルに移転するモーション移転処理を実行させるプログラム。
  16.  情報処理装置において情報処理を実行させるプログラムであり、
     前記情報処理装置は、
     3次元モデル間のモーション移転を実行するデータ処理部を有し、
     前記プログラムは、前記データ処理部に、
     モーションパラメータ変換関数Fを用いてソースモデルのモーションパラメータを、ターゲットモデル対応のモーションパラメータに変換し、変換パラメータをターゲットモデルに適用して、ソースモデルのモーションを、前記ソースモデルと異なる骨構造を持つターゲットモデルに移転するモーション移転処理を実行させるプログラム。
PCT/JP2020/003362 2019-03-14 2020-01-30 情報処理装置、および情報処理方法、並びにプログラム WO2020183962A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-046759 2019-03-14
JP2019046759A JP2020149396A (ja) 2019-03-14 2019-03-14 情報処理装置、および情報処理方法、並びにプログラム

Publications (1)

Publication Number Publication Date
WO2020183962A1 true WO2020183962A1 (ja) 2020-09-17

Family

ID=72426720

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/003362 WO2020183962A1 (ja) 2019-03-14 2020-01-30 情報処理装置、および情報処理方法、並びにプログラム

Country Status (2)

Country Link
JP (1) JP2020149396A (ja)
WO (1) WO2020183962A1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007167323A (ja) * 2005-12-21 2007-07-05 Konami Digital Entertainment:Kk ゲーム装置、ゲーム装置の制御方法及びプログラム
JP2018125000A (ja) * 2017-02-03 2018-08-09 ソニー株式会社 視点変換のためのリアルなリグ付き3次元(3d)モデルアニメーションを生成するための装置及び方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007167323A (ja) * 2005-12-21 2007-07-05 Konami Digital Entertainment:Kk ゲーム装置、ゲーム装置の制御方法及びプログラム
JP2018125000A (ja) * 2017-02-03 2018-08-09 ソニー株式会社 視点変換のためのリアルなリグ付き3次元(3d)モデルアニメーションを生成するための装置及び方法

Also Published As

Publication number Publication date
JP2020149396A (ja) 2020-09-17

Similar Documents

Publication Publication Date Title
US10783690B2 (en) Image regularization and retargeting system
EP2710557B1 (en) Fast articulated motion tracking
Stoll et al. Fast articulated motion tracking using a sums of gaussians body model
EP2880633B1 (en) Animating objects using the human body
JP5931215B2 (ja) 姿勢を推定する方法及び装置
Capell et al. Physically based rigging for deformable characters
JP5525407B2 (ja) 動作モデル学習装置、3次元姿勢推定装置、動作モデル学習方法、3次元姿勢推定方法およびプログラム
CN101578613A (zh) 在运动捕捉中使用的标记
JP7490142B2 (ja) 姿勢の脱曖昧化
JP7480001B2 (ja) 学習装置、処理装置、学習方法、姿勢検出モデル、プログラム、及び記憶媒体
Wu et al. Leveraging vision and kinematics data to improve realism of biomechanic soft tissue simulation for robotic surgery
Le Naour et al. Skeletal mesh animation driven by few positional constraints
Taylor et al. VR props: an end-to-end pipeline for transporting real objects into virtual and augmented environments
WO2020183962A1 (ja) 情報処理装置、および情報処理方法、並びにプログラム
Hachaj et al. RMoCap: an R language package for processing and kinematic analyzing motion capture data
Amamra Smooth head tracking for virtual reality applications
JP7251003B2 (ja) 細かいしわを有する顔メッシュ変形
US11893671B2 (en) Image regularization and retargeting system
Capell et al. Physically based rigging for deformable characters
Van Houtte et al. An articulating statistical shape model of the human hand
WO2023127005A1 (ja) データ拡張装置、データ拡張方法、及びコンピュータ読み取り可能な記録媒体
KR101197969B1 (ko) 프로파일 경로들을 이용하여 인간의 동작을 시뮬레이팅하는시스템 및 방법
JP2023167320A (ja) 学習モデル生成装置、関節点検出装置、学習モデル生成方法、関節点検出方法、及びプログラム
Danckaers et al. An Articulating Statistical Shape Model of the Human Hand
Woodward et al. Low cost virtual face performance capture using stereo web cameras

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: 20769177

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20769177

Country of ref document: EP

Kind code of ref document: A1