WO2023132261A1 - 情報処理システム、情報処理方法および情報処理プログラム - Google Patents
情報処理システム、情報処理方法および情報処理プログラム Download PDFInfo
- Publication number
- WO2023132261A1 WO2023132261A1 PCT/JP2022/047439 JP2022047439W WO2023132261A1 WO 2023132261 A1 WO2023132261 A1 WO 2023132261A1 JP 2022047439 W JP2022047439 W JP 2022047439W WO 2023132261 A1 WO2023132261 A1 WO 2023132261A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- texture
- shape
- image
- camera
- face
- Prior art date
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 112
- 238000003672 processing method Methods 0.000 title description 5
- 230000010354 integration Effects 0.000 claims abstract description 42
- 230000001815 facial effect Effects 0.000 claims abstract description 34
- 238000002156 mixing Methods 0.000 claims abstract description 18
- 238000000034 method Methods 0.000 claims description 28
- 230000006641 stabilisation Effects 0.000 claims description 11
- 238000011105 stabilization Methods 0.000 claims description 11
- 239000000203 mixture Substances 0.000 claims description 5
- 230000037237 body shape Effects 0.000 claims description 4
- 238000009499 grossing Methods 0.000 claims description 2
- 210000003128 head Anatomy 0.000 description 63
- 238000012545 processing Methods 0.000 description 36
- 238000010276 construction Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 18
- 230000008921 facial expression Effects 0.000 description 17
- 230000003287 optical effect Effects 0.000 description 11
- 238000012937 correction Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 6
- 238000003384 imaging method Methods 0.000 description 6
- WHHGLZMJPXIBIX-UHFFFAOYSA-N decabromodiphenyl ether Chemical compound BrC1=C(Br)C(Br)=C(Br)C(Br)=C1OC1=C(Br)C(Br)=C(Br)C(Br)=C1Br WHHGLZMJPXIBIX-UHFFFAOYSA-N 0.000 description 5
- 238000006073 displacement reaction Methods 0.000 description 5
- 210000000746 body region Anatomy 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000000087 stabilizing effect Effects 0.000 description 2
- 238000002834 transmittance Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005401 electroluminescence Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
Definitions
- the present invention relates to an information processing system, information processing method, and information processing program for reproducing a 3D model.
- Non-Patent Document 1 acquires the 3D shape and texture of a person using a depth sensor, transmits the acquired 3D shape and texture to a remote location, and uses an MR (mixed reality) headset to obtain the 3D shape of the person.
- MR mixed reality
- Disclosed is a system that enables communication while a model is superimposed on the real space. Also, the 3D shape of a person may be obtained using multiple cameras.
- One object of the present invention is to provide a configuration that can reproduce a 3D model of a person with a simpler configuration.
- An information processing system includes a camera, a storage unit storing pre-created 3D shape data representing a 3D shape of a body and texture data representing the texture of the body, and an image captured by the camera.
- a face texture reconstruction unit that reconstructs the texture of the face from the 2D image of the person
- a face shape reconstruction unit that reconstructs the 3D shape of the face from the 2D image of the person captured by the camera, and the person captured by the camera.
- a pose estimating unit that estimates the pose of the person from the 2D image, reconstructs the 3D shape of the body corresponding to the pose estimated based on the 3D shape data, and reconstructs the reconstructed 3D shape and reconstruction of the body a shape integrating unit that reconstructs the 3D shape of the person captured by the camera by integrating the 3D shape of the face captured by the camera; a texture reconstruction unit that reconstructs a texture image of the person captured by the camera; and a texture image of the person captured by the camera based on the 3D shape of the person captured by the camera and the texture image of the person captured by the camera and a model generator that generates the 3D model.
- the texture data includes a texture image corresponding to the reconstructed 3D shape of the body, a texture image corresponding to the reconstructed 3D shape of the face, a texture map corresponding to the reconstructed 3D shape of the body, and , and a texture map corresponding to the reconstructed 3D shape of the face.
- the information processing system includes a body shape reconstruction unit that reconstructs a 3D shape of the body from multiple 2D images of the person captured by the camera, and a 3D shape of the head from the multiple 2D images of the person captured by the camera. Determining the correspondence between the reconstructed head shape reconstruction unit and the reconstructed 3D shape of the body and the reconstructed 3D shape of the head, and based on the determined correspondence between the 3D shapes, Determining a correspondence relationship between a texture map corresponding to the 3D shape of the body and a texture map corresponding to the 3D shape of the head, and producing a texture image corresponding to the 3D shape of the body based on the determined correspondence relationship between the texture maps. and a texture integration unit that generates a texture image corresponding to the 3D shape of the head from.
- the shape integration unit may integrate the reconstructed 3D shape of the body and the reconstructed 3D shape of the face based on the texture map included in the texture data.
- the model generation unit may integrate the 3D shape of the person and the texture image of the person based on the texture map included in the texture data.
- the texture reconstructing unit may superimpose the result of passing through a mask in the texture image of the person captured by the camera on the texture image included in the texture data.
- the mask may be configured to have a continuously varying transmittance.
- a partial image corresponding to a window set in a 2D image of a person captured by a camera may be input to the face texture reconstruction unit and the face shape reconstruction unit.
- the information processing system may further include a stabilization unit that temporally smoothes the position of the person in the 2D image to set the window.
- the texture integration unit integrates a texture image corresponding to the 3D shape of the body and a texture image corresponding to the 3D shape of the head, and also integrates a texture map corresponding to the 3D shape of the body and a texture image corresponding to the 3D shape of the head. Texture data may be generated by integrating with a map.
- An information processing method includes the steps of reconstructing a facial texture from a 2D image of a person captured by a camera, and reconstructing a 3D shape of the face from the 2D image of a person captured by a camera.
- a step of estimating the pose of the person from a 2D image of the person captured by a camera reconstructing and integrating the reconstructed 3D shape of the body and the reconstructed 3D shape of the face to reconstruct the 3D shape of the person captured by the camera; blending the reconstructed texture image of the face with the texture image included in the texture data representing the texture of the face to reconstruct a texture image of the person captured by the camera; and generating a 3D model of the person captured by the camera based on the texture image of the person captured by the camera.
- an information processing program for causing a computer to execute the above method is provided.
- a 3D model of a person can be reproduced with a simpler configuration.
- FIG. 1 is a schematic diagram showing an example of a system configuration of an information processing system according to an embodiment
- FIG. 1 is a schematic diagram showing an example of a hardware configuration of an information processing device that constitutes an information processing system according to an embodiment
- FIG. 4 is a flow chart showing a processing procedure in an initial model building stage of the information processing system according to the present embodiment
- 4 is a flow chart showing a processing procedure in a 3D model reproduction stage of the information processing system according to the present embodiment
- FIG. 3 is a schematic diagram showing a functional configuration example for realizing an initial model construction stage of the information processing system according to the present embodiment
- FIG. 4 is a diagram showing an example of data generated in an initial model building stage of the information processing system according to the present embodiment
- FIG. 4 is a schematic diagram for explaining texture integration processing in the initial model construction stage of the information processing system according to the present embodiment
- FIG. 3 is a schematic diagram showing a functional configuration example for realizing a 3D model reproduction stage of the information processing system according to the present embodiment
- FIG. 4 is a diagram showing an example of data generated in the 3D model reproduction stage of the information processing system according to the present embodiment
- FIG. 4 is a schematic diagram for explaining blending processing in the information processing system according to the present embodiment
- FIG. 4 is a schematic diagram showing another example of the system configuration of the information processing system according to the present embodiment
- 3D three-dimensional or three-dimensional objects
- 2D two-dimensional or planar objects
- FIG. 1 is a schematic diagram showing an example of a system configuration of an information processing system 1 according to this embodiment.
- FIG. 1 shows, for example, a configuration in which information processing apparatuses 100-1 and 100-2 (hereinafter sometimes collectively referred to as "information processing apparatuses 100") and an information processing apparatus 200 are connected via a network 2.
- a camera 140-1 is connected to the information processing device 100-1
- a camera 140-2 is connected to the information processing device 100-2.
- the information processing device 100 acquires an initial model of the person 10 in advance.
- the information processing apparatus 100 reproduces a 3D model of the person 10 by continuously capturing images of the person 10 with the camera 140 .
- the reproduced 3D model changes in real time by reflecting the movements and facial expressions of the person 10 being imaged.
- the reproduced 3D model of the person 10 is also called a 3D avatar, or simply an avatar.
- a person 10-1 exists within the field of view of the camera 140-1
- a person 10-2 exists within the field of view of the camera 140-2.
- the information processing device 100-1 reproduces a 3D model 20-1 of the person 10-1 on the screen of the information processing device 200 by capturing an image of the person 10-1.
- the information processing device 100-2 reproduces a 3D model 20-2 of the person 10-2 on the screen of the information processing device 200 by capturing an image of the person 10-2.
- the 3D models 20-1 and 20-2 reproduced on the screen of the information processing device 200 can exist in any 3D space.
- FIG. 2 is a schematic diagram showing an example of a hardware configuration of information processing apparatus 100 forming information processing system 1 according to the present embodiment.
- information processing apparatus 100 can be implemented using a general-purpose computer.
- information processing apparatus 100 includes, as main hardware components, CPU 102, GPU 104, main memory 106, display 108, network interface (I/F) 110, and input device 112. , optical drive 114 , camera interface (I/F) 118 , and storage 120 .
- the CPU 102 and/or GPU 104 are processors that execute the information processing method according to the present embodiment.
- a plurality of CPUs 102 and GPUs 104 may be arranged, or may have a plurality of cores.
- the main memory 106 is a storage area that temporarily stores (or caches) program code and work data when the processor (CPU 102 and/or GPU 104) executes processing. ) and SRAM (Static Random Access Memory).
- the display 108 is a display unit that outputs a user interface related to processing, processing results, and the like, and is composed of, for example, an LCD (liquid crystal display) or an organic EL (electroluminescence) display.
- the network interface 110 exchanges data with any information processing device or the like connected to the network 2 .
- the input device 112 is a device that receives instructions and operations from the user, and is composed of, for example, a keyboard, mouse, touch panel, and pen.
- the optical drive 114 reads information stored in an optical disc 116 such as a CD-ROM (compact disc read only memory) or DVD (digital versatile disc) and outputs it to other components.
- the optical disc 116 is an example of a non-transitory recording medium, and is distributed in a state in which arbitrary programs are stored in a non-volatile manner.
- the optical drive 114 reads the program from the optical disc 116 and installs it in the storage 120 or the like, so that the computer functions as the information processing device 100 . Therefore, the subject of the present invention can be the program itself installed in storage 120 or the like, or a recording medium such as optical disc 116 storing a program for realizing the functions and processes according to the present embodiment.
- FIG. 2 shows an optical recording medium such as an optical disk 116 as an example of a non-transitory recording medium, but is not limited to this, semiconductor recording media such as flash memory, magnetic recording media such as hard disks or storage tapes. , MO (magneto-optical disk) or other magneto-optical recording media may be used.
- semiconductor recording media such as flash memory
- magnetic recording media such as hard disks or storage tapes.
- MO magnetic-optical disk
- other magneto-optical recording media may be used.
- the camera interface 118 acquires the video imaged by the camera 140 and gives the camera 140 commands regarding imaging.
- the storage 120 stores programs and data necessary for the computer to function as the information processing device 100 .
- it is composed of a non-volatile storage device such as a hard disk or SSD (solid state drive).
- the storage 120 includes an OS (operating system) (not shown), an initial model construction program 122 that implements initial model construction processing (initial model construction stage), and a 3D model generation process (3D model 3D model reproduction program 124 for realizing the reproduction stage).
- OS operating system
- initial model construction program 122 that implements initial model construction processing
- 3D model generation process (3D model 3D model reproduction program 124 for realizing the reproduction stage).
- the initial 3D shape data 162 and initial texture data 168 generated in the initial model building stage may be stored in the storage 120 . That is, the storage 120 corresponds to a storage unit that stores pre-created 3D shape data 126 representing the 3D shape of the body and initial texture data 168 (texture data) representing the texture of the body.
- FIG. 2 shows an example in which the information processing apparatus 100 is configured using a single computer. , the information processing method according to the present embodiment may be realized.
- All or part of the functions realized by the processor (CPU 102 and/or GPU 104) executing the program may be realized using a hard-wired circuit such as an integrated circuit.
- a hard-wired circuit such as an integrated circuit.
- it may be realized using ASIC (application specific integrated circuit) or FPGA (field-programmable gate array).
- a person skilled in the art will be able to implement the information processing apparatus 100 according to the present embodiment by appropriately using technology suitable for the era in which the present invention is implemented.
- the hardware configuration of the information processing apparatus 200 that constitutes the information processing system 1 is the same as that of FIG. 2, so detailed description will not be repeated.
- Texture data is a generic term for texture images and texture maps.
- FIG. 3 is a flow chart showing a processing procedure in the initial model construction stage of information processing system 1 according to the present embodiment. Each process shown in FIG. 3 is typically implemented by the processor of the information processing apparatus 100 executing a program (initial model construction program 122 shown in FIG. 2).
- the information processing device 100 acquires the 2D video (for one frame) captured by the camera 140 (step S100).
- the information processing apparatus 100 determines whether or not a predetermined number of frames of 2D video has been acquired (step S102). If the predetermined number of frames of 2D video has not been acquired (NO in step S102), the processing from step S100 onward is repeated.
- the information processing apparatus 100 may start imaging with the camera 140 in response to an explicit instruction from the user, or may repeat imaging at a predetermined cycle.
- the information processing apparatus 100 reconstructs body 3D shape data 160 representing the captured 3D shape of the body based on the acquired multiple 2D images (multi-viewpoint images 144) (step S104).
- the information processing apparatus 100 then flattens the area corresponding to the face area in the displacement map included in the body 3D shape data 160 (step S106).
- the shape parameters and the displacement map after flattening are output as the initial 3D shape data 162 (step S108).
- the information processing apparatus 100 reconstructs body texture data (body texture image 1642 and body texture map 1644) representing the texture of the body based on the acquired plurality of 2D images (multi-viewpoint images 144) (step S110). ).
- the information processing apparatus 100 also reconstructs head 3D shape data 167 representing the captured 3D shape of the head based on the acquired multiple 2D images (multi-viewpoint images 144) (step S112).
- the texture integration unit 158 integrates the body texture data 164 and the face texture data 166 to reconstruct the initial texture data 168 (initial texture image 1682 and initial texture map 1684) (step S114).
- the information processing device 100 stores the initial 3D shape data 162 and the initial texture data 168 of the person as an initial model (step S116).
- FIG. 4 is a flowchart showing a processing procedure in the 3D model reproduction stage of information processing system 1 according to the present embodiment. Each process shown in FIG. 4 is typically implemented by the processor of the information processing apparatus 100 executing a program (3D model reproduction program 124 shown in FIG. 2).
- the information processing device 100 acquires the 2D video (for one frame) captured by the camera 140 (step S200).
- the information processing apparatus 100 detects the face area included in the acquired 2D video (for one frame) (step S202), and determines the current window position and size based on the past detection result of the face area (step S204).
- the information processing apparatus 100 reconstructs a face texture image 1666 representing the imaged face image based on the 2D image of the portion corresponding to the determined window (step S206). That is, the information processing apparatus 100 reconstructs the texture of the face from the 2D image of the person captured by the camera 140 .
- the information processing apparatus 100 blends the face texture image 1666 with the initial texture image 1682 (initial face texture image 1686) reconstructed in the initial model construction stage to reconstruct a blended face texture image 1824 (step S208). That is, the information processing apparatus 100 blends the reconstructed face texture image (face texture image 1666) with the texture image (initial face texture image 1686) included in the texture data representing the texture of the body created in advance. , reconstructs the texture image of the person captured by camera 140 (blended face texture image 1824).
- the information processing apparatus 100 reconstructs parameters (facial expression parameters 184) indicating each of the facial expression, movement, and 3D shape based on the 2D image of the portion corresponding to the determined window (step S210). . That is, the information processing apparatus 100 reconstructs the 3D shape of the face from the 2D image of the person captured by the camera 140 .
- the information processing apparatus 100 also estimates the pose (orientation) of the body for each frame from the 2D video (for one frame) (step S212). That is, the information processing apparatus 100 estimates the pose of the person from the 2D image of the person captured by the camera 140 . The estimated pose is output as body pose data 186 for each frame.
- step S210 and the processing of step S212 may be executed in parallel or serially.
- the execution order of the processes may be any.
- the information processing apparatus 100 inputs the body pose data 186 and the facial expression parameters 184 to the initial 3D shape data 162 reconstructed in the initial model building stage, thereby creating a 3D model that integrates the 3D shape of the body and the 3D shape of the face.
- Integrated 3D shape data 188 representing the shape is reconstructed (step S214). More specifically, the information processing apparatus 100 creates a 3D shape of the body (integrated 3D shape) corresponding to the pose estimated based on 3D shape data (initial 3D shape data 162) representing the 3D shape of the body created in advance. data 188) are reconstructed.
- the information processing apparatus 100 also integrates the reconstructed 3D shape of the body and the reconstructed 3D shape of the face to reconstruct the 3D shape of the person captured by the camera 140 (integrated 3D shape data 188). To construct.
- steps S202 to S208 and the processing of steps S210 to S214 may be executed in parallel or serially.
- the execution order of the processes may be any.
- the information processing device 100 integrates the integrated 3D shape data 188 and the blended face texture image 1824 (step S216), and outputs a 3D model viewed from one designated viewpoint (step S218). That is, the information processing apparatus 100 generates the 3D model 190 of the person captured by the camera 140 based on the 3D shape of the person captured by the camera 140 and the texture image of the person captured by the camera 140 .
- steps S200 to S218 are repeated for each frame.
- an initial model for reproducing a 3D model is constructed by imaging a person.
- the initial model that is constructed reflects the body and face information of the person, respectively.
- FIG. 5 is a schematic diagram showing a functional configuration example for realizing the initial model construction stage of the information processing system 1 according to the present embodiment.
- FIG. 6 is a diagram showing an example of data generated in the initial model construction stage of information processing system 1 according to the present embodiment.
- FIG. 5 Each function shown in FIG. 5 is typically implemented by the processor of the information processing device 100 executing a program (the initial model construction program 122 shown in FIG. 2).
- information processing apparatus 100 includes video acquisition unit 142, body 3D shape reconstruction unit 150, 3D shape correction unit 152, body texture reconstruction unit 154, and face texture reconstruction unit 156. , a head 3D shape reconstruction unit 157 and a texture integration unit 158 .
- the image acquisition unit 142 acquires the 2D image captured by the camera 140 .
- the image acquisition unit 142 acquires a plurality of 2D images (multi-viewpoint images 144) obtained by imaging a person whose 3D model is to be reproduced from multiple viewpoints.
- the position of the camera 140 may be changed with respect to the person to capture images from a plurality of viewpoints, or the person may rotate his or her body while the camera 140 is fixed so that images from a plurality of viewpoints may be captured.
- a plurality of cameras 140 may be prepared, and a plurality of 2D images may be obtained by capturing images of a person with each camera 140 .
- FIG. 6A shows an example of a multi-viewpoint video 144 in which a person is imaged from eight viewpoints.
- the multi-viewpoint video 144 used to reconstruct the initial model is preferably a 2D video of 5 to 10 frames.
- the body 3D shape reconstruction unit 150 reconstructs the 3D shape of the body based on the multi-viewpoint video 144 . That is, the body 3D shape reconstruction unit 150 reconstructs the 3D shape of the body from a plurality of 2D images of the person captured by the camera 140, and outputs body 3D shape data 160 representing the captured 3D shape of the body. do.
- FIG. 6B shows an example of visually expressing the reconstructed body 3D shape data 160. As shown in FIG.
- the body 3D shape reconstruction unit 150 reconstructs a model representing the 3D shape of the human body from the 2D image.
- “Tex2Shape” Alldieck, T.; Pons-Moll, G.; Theobalt, C.; Magnor, M. Tex2Shape: Detailed Full Human Body Geometry From a Single Image In 2019 IEEE/CVF International Conference on Computer Vision (ICCV); 2019; pp 2293-2303. https://doi.org/10.1109/ICCV.2019.00238.
- “Tex2Shape” outputs shape parameters (principal component feature ⁇ that indicates shape) and displacement maps.
- shape parameters principal component feature ⁇ that indicates shape
- displacement maps When “Tex2Shape” outputs a model in SMPL format, it may be further converted into SMPL-X format, which has four times the resolution of SMPL format.
- the body 3D shape reconstruction unit 150 outputs body 3D shape data 160 as information indicating the 3D shape of the human body.
- the body 3D shape data 160 typically consists of data in mesh format.
- the 3D shape correction unit 152 flattens the face area in the body 3D shape data 160 reconstructed by the body 3D shape reconstruction unit 150 .
- another model is used to reconstruct the person's face, so it is preferable not to mutate the reconstructed 3D shape of the face region.
- the 3D shape correction unit 152 corrects the area in the displacement map corresponding to the estimated face area to a flat area. That is, the 3D shape correction unit 152 corrects the face area to a flat area without undulations. Such flattening makes it possible to more efficiently reproduce the human head in the 3D model reproduction stage.
- the 3D shape correction unit 152 extracts a person included in the 2D image used to reconstruct the body 3D shape data 160, and estimates the human body region (body parts) of the extracted person. . For example, regions corresponding to a person's face, hands, feet, etc. are estimated. For such estimation in the human body region, "DensePose" (Gueler, R. A.; Noneova, N.; Kokkinos, I. DensePose: Dense Human Pose Estimation in the Wild. In 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition; 2018; pp 7297-7306. https://doi.org/10.1109/CVPR.2018.00762.) can be used.
- the 3D shape correction unit 152 updates the value of the region within the displacement map corresponding to the estimated face region to a value indicating a flat region.
- the 3D shape correction unit 152 outputs initial 3D shape data 162 representing a 3D shape obtained by flattening the face area.
- FIG. 6C shows an example of visually representing the initial 3D shape data 162 .
- body texture reconstruction unit 154 reconstructs body texture from a plurality of 2D images (multi-viewpoint images 144) of a person captured by the camera 140.
- body texture reconstruction unit 154 reconstructs body texture image 1642 and body texture map 1644 .
- the body texture image 1642 and the body texture map 1644 may be collectively referred to as "body texture data 164".
- FIG. 6(D) shows an example of a body texture image 1642 and a body texture map 1644 (body texture data 164).
- the body texture reconstruction unit 154 reconstructs the body texture data 164 according to the following processing.
- the body texture reconstruction unit 154 detects key points of a person from 2D images included in the multi-viewpoint image 144 .
- "OpenPose” (Cao, Z.; Hidalgo, G.; Simon, T.; Wei, S.-E.; Sheikh, Y. OpenPose: Realtime Multi-Person 2D Pose Estimation Known algorithms such as Using Part Affinity Fields. IEEE Transactions on Pattern Analysis and Machine Intelligence 2021, 43 (1), 172-186. https://doi.org/10.1109/TPAMI.2019.2929257.) can be used.
- the body texture reconstruction unit 154 uses the detected keypoints to perform semantic segmentation on the 2D video to estimate the human body region (body parts) of the person.
- semantic segmentation includes "PGN" (Gong, K.; Liang, X.; Li, Y.; Chen, Y.; Yang, M.; Lin, L. Instance-Level Human Parsing via Part Grouping Network In Computer Vision - ECCV 2018; Ferrari, V., Hebert, M., Sminchisescu, C., Weiss, Y., Eds.; Lecture Notes in Computer Science; Springer International Publishing: Cham, 2018; pp 805-822. https://doi.org/10.1007/978-3-030-01225-0_47.) can be used.
- the body texture reconstruction unit 154 uses the estimated human body region to reconstruct texture data (body texture image 1642 and body texture map 1644) from multiple 2D images (multi-viewpoint images 144).
- texture data body texture image 1642 and body texture map 1644.
- "Semantic Human Texture Stitching” Alldieck, T.; Magnor, M.; Xu, W.; Theobalt, C.; Pons-Moll, G. Detailed Human Avatars from Monocular Video In 2018 International Conference on 3D Vision (3DV); 2018; pp 98-109. https://doi.org/10.1109/3DV.2018.00022.
- “Semantic Human Texture Stitching” can output texture data in both SMPL and SMPL-X formats. As described above, when body 3D shape data 160 conforming to the SMPL-X format is used, texture data also conforming to the SMPL-X format is used.
- the SMPL format/SMPL-X format adopts the same format as the texture map (UV mapping) included in the texture data.
- the face texture reconstruction unit 156 reconstructs the texture of the face from the 2D image of the person captured by the camera 140 .
- the face texture reconstruction unit 156 reconstructs the texture of the face based on the 2D video included in the multi-viewpoint video 144 .
- facial texture reconstructor 156 reconstructs facial texture image 1662 and facial texture map 1664 .
- Face texture image 1662 and face texture map 1664 are sometimes collectively referred to as "face texture data 166".
- the face texture image is reconstructed by the texture integrating section 158, so the facial texture image 1662 reconstructed by the facial texture reconstruction section 156 may be discarded.
- the facial texture reconstruction unit 156 reconstructs the facial texture data 166 according to the following processing. That is, "DECA” (Feng, Y.; Feng, H.; Black, M. J.; Bolkart, T. Learning an Animatable Detailed 3D Face Model from In-the-Wild Images. ACM Trans. Graph. 2021, 40 (4), 88:1-88:13.https://doi.org/10.1145/3450626.3459936.) can be used.
- DECA outputs FLAME model parameters (indicating the shape and expression of the face) for reproducing a person's face and texture data according to the FLAME format.
- the face texture data 166 conforming to the FLAME format is output from the 2D image of the person captured by the camera.
- the texture integration unit 158 integrates the body texture data 164 by applying the face texture data 166 conforming to the FLAME format to the body texture data 164 .
- the facial texture reconstruction unit 156 reconstructs the facial texture data 166 for each frame even in the 3D model reproduction stage.
- the head 3D shape reconstruction unit 157 reconstructs the 3D shape of the head from a plurality of 2D images (multi-viewpoint images 144 ) of the person captured by the camera 140 . That is, the head 3D shape reconstruction unit 157 reconstructs head 3D shape data 167 representing the 3D shape of the imaged head.
- the head 3D shape reconstruction unit 157 uses the same algorithm as the body 3D shape reconstruction unit 150 to reconstruct a model representing the 3D shape of the person's head from the 2D image.
- the head 3D shape reconstruction unit 157 outputs head 3D shape data 167 as information indicating the 3D shape of the head.
- the head 3D shape data 167 typically consists of mesh format data.
- Texture integration unit 158 integrates body texture data 164 and face texture data 166 to reconstruct initial texture data 168 (initial texture image 1682 and initial texture map 1684). The texture integration unit 158 integrates the body texture data 164 and the face texture data 166 based on the correspondence relationship between the body 3D shape data 160 and the head 3D shape data 167 .
- each of the initial texture image 1682 and the initial texture map 1684 is composed of a head portion including the face and a body portion other than the head.
- the initial texture image 1682 is composed of an initial face texture image 1686 reconstructed by processing described later, and a modified body texture image 1642H obtained by nullifying a head partial image 1642H corresponding to the head from the body texture image 1642. and a texture image 1642A.
- the initial texture map 1684 consists of a face texture map 1664 and a modified body texture map 1644A obtained by invalidating the head part map 1644H corresponding to the head from the body texture map 1644.
- the initial texture data 168 (texture data) consists of a texture image (modified body texture image 1642A) corresponding to the 3D shape of the reconstructed body and a 3D texture image of the reconstructed face.
- a texture image corresponding to the shape (initial face texture image 1686), a texture map corresponding to the reconstructed 3D shape of the body (modified body texture map 1644A), and a texture corresponding to the reconstructed 3D shape of the face. map (face texture map 1664).
- FIG. 6E shows a state in which the head partial image 1642H and the head partial map 1644H are deleted as an example of invalidation of the head partial image 1642H and the head partial map 1644H.
- FIG. 7 is a schematic diagram for explaining texture integration processing in the initial model construction stage of the information processing system 1 according to the present embodiment.
- the texture integration unit 158 executes the following five processes.
- the texture integration unit 158 maps the body 3D shape data 160 and the head 3D shape data 167 to a common 3D space, thereby aligning the two shapes. Align the data.
- the body 3D shape data 160 and the head 3D shape data 167 represent 3D shapes reconstructed from the same person, they are considered to have substantially the same topology.
- the texture integration unit 158 focuses on common characteristic parts of the face (eyes, nose, etc.) and maps each shape data onto a common 3D space so that the focused parts have the same coordinates. Coordinate transformation matrices including operations such as translation, rotation, and scaling are used for processing for realizing such alignment.
- the texture integration unit 158 determines correspondence between meshes between the two pieces of aligned shape data. That is, the texture integration unit 158 determines the correspondence relationship between the mesh included in the body 3D shape data 160 (for example, a set of triangles defined by three vertices) and the mesh included in the head 3D shape data 167. .
- the texture integration unit 158 searches for the closest mesh among the meshes included in the post-alignment head 3D shape data 167 for each mesh included in the post-alignment body 3D shape data 160 . Finally, the texture integration unit 158 determines the correspondence between meshes (for example, the correspondence between the index indicating each mesh included in the body 3D shape data 160 and the index indicating each mesh included in the head 3D shape data 167). Array that indicates the relationship).
- the texture integration unit 158 determines the correspondence relationship between the reconstructed 3D shape of the body (body 3D shape data 160) and the reconstructed 3D shape of the head (head 3D shape data 167). .
- the texture integration unit 158 determines correspondence between the body texture map 1644 and the face texture map 1664 .
- the correspondence (one-to-one) between body 3D shape data 160 and body texture map 1644 is known, as is the correspondence (one-to-one) between head 3D shape data 167 and face texture map 1664. Known.
- the correspondence (one-to-one) between the body 3D shape data 160 and the head 3D shape data 167 is determined. determine the correspondence between
- the texture integration unit 158 combines the texture map (body texture map 1644) corresponding to the 3D shape of the body (3D body shape data 160) with the 3D shape of the head based on the determined 3D shape correspondence relationship. Determine the correspondence with the texture map (face texture map 1664) corresponding to (head 3D shape data 167).
- texture integration section 158 generates initial face texture image 1686 based on the correspondence relationship between body texture map 1644 and face texture map 1664 .
- the texture integration unit 158 determines the coordinates of the body texture map 1644 corresponding to the coordinates of the face texture map 1664, and calculates the pixel values of the body texture image 1642 at the determined coordinates of the body texture map 1644. Applies as a new pixel value of the face texture image. That is, by mapping the body texture image 1642 based on the correspondence relationship between the body texture map 1644 and the face texture map 1664, an initial face texture image 1686, which is a new face texture image, is generated.
- the texture integration unit 158 extracts the 3D shape of the head from the texture image (body texture image 1642) corresponding to the 3D shape of the body (3D body shape data 160) based on the determined texture map correspondence.
- a texture image (initial face texture image 1686) corresponding to (head 3D shape data 167) is generated.
- texture integration section 158 reconstructs initial texture data 168 (initial texture image 1682 and initial texture map 1684).
- the texture integration unit 158 invalidates the head partial image 1642H corresponding to the head in the body texture image 1642, and combines it with the generated initial face texture image 1686.
- the initial texture image 1682 corresponds to the modified body texture map 1644A and the initial face texture image 1686 adjusted to the same scale and placed adjacent to each other.
- the texture integration unit 158 invalidates the head part map 1644H corresponding to the head among the body texture maps 1644 and combines it with the face texture map 1664 .
- the initial texture map 1684 corresponds to the modified body texture image 1642A and the face texture map 1664 adjusted to the same scale and arranged adjacent to each other.
- texture data conforming to the SMPL-X format it can be reformatted to the FLAME format by a predetermined scaling.
- the correspondence between texture maps conforming to the SMPL-X format and texture maps conforming to the FLAME format is one-to-one. can decide.
- the texture integration unit 158 generates a texture image (body texture image 1642) corresponding to the 3D shape of the body (body 3D shape data 160) and a texture image corresponding to the 3D shape of the head (head 3D shape data 167).
- Image initial face texture image 1686) is integrated, and a texture map corresponding to the 3D shape of the body (modified body texture map 1644A) and a texture map corresponding to the 3D shape of the head (face texture map 1664) are integrated.
- initial texture data 168 is generated.
- the initial texture data 168 (initial texture image 1682 and initial texture map 1684) is composed of a part about the head including the face and parts of the body other than the head. By preparing more textures for the head including the face, it is possible to improve the reproducibility of facial expressions and movements (gestures) even in imaging using a single camera.
- a 3D model is reproduced from a 2D image (for one frame) of a person captured by one camera 140 .
- a 3D model is reproduced from a 2D image (for one frame) of a person captured by one camera 140 .
- FIG. 8 is a schematic diagram showing a functional configuration example for realizing the 3D model reproduction stage of the information processing system 1 according to the present embodiment.
- FIG. 9 is a diagram showing an example of data generated in the 3D model reproduction stage of information processing system 1 according to the present embodiment.
- Each function shown in FIG. 8 is typically implemented by the processor of the information processing device 100 executing a program (the 3D model reproduction program 124 shown in FIG. 2). Note that the information processing apparatus 200 may take charge of some of the processes.
- information processing apparatus 100 includes a stabilization unit 170, a face texture reconstruction unit 156, a texture image blending unit 172, a face shape reconstruction unit 174, a pose estimation unit 176, and a shape integration unit. 178 and a 3D model generator 180 .
- the stabilizing unit 170 detects a face area included in the 2D image captured by the camera 140 and temporally stabilizes the detected face area.
- Stabilizing section 170 outputs the temporally stabilized partial video corresponding to the facial region to facial texture reconstructing section 156 and facial shape reconstructing section 174 . That is, the partial image corresponding to the window set in the 2D image of the person captured by the camera 140 is input to the face texture reconstruction unit 156 and the face shape reconstruction unit 174 .
- the stabilization unit 170 temporally smoothes the position and size of the face area 163 (window) extracted from the 2D image 146 .
- FIG. 9A shows an example of processing for extracting face regions 163A and 163B from the 2D image 146.
- FIG. The ranges of face areas 163A and 163B can be determined by known image recognition processing.
- the positions of face keypoints eg, eyes
- the size can also change from frame to frame.
- the stabilization unit 170 stabilizes the reproduced face by temporally smoothing the position and size of the window. That is, the stabilization unit 170 temporally smoothes the position of the person in the 2D image to set the window.
- the stabilization unit 170 adopts a window with a certain size that can cover the entire face of the person, and sets the window at a position based on a specific keypoint.
- a window can be set around the tip of the nose.
- the stabilization unit 170 uses the average position of each specific keypoint detected from the past n frames as a reference. , sets the position of the window in the next frame. Also, when the person approaches or moves away from the camera 140 in the next frame, the stabilization unit 170 follows the window size based on the moving average of the window sizes in the past n frames. change.
- the size and position of the window are reset and set again. In this case, discontinuity may occur in the reproduced face, so additional processing may be performed to reduce discomfort.
- the position and size of the sequentially extracted face region 163 do not change greatly between frames, so that discontinuity in the shape of the reconstructed face can be minimized. can be reduced.
- the face texture reconstruction unit 156 reconstructs the texture of the face based on the image of the face region 163 extracted from the 2D image 146 . More specifically, facial texture reconstructor 156 reconstructs facial texture image 1666 . Facial texture reconstruction unit 156 is substantially the same as facial texture reconstruction unit 156 shown in FIG. 5, so detailed description thereof will not be repeated.
- FIG. 9B shows an example of a reconstructed face texture image 1666.
- the facial texture reconstruction unit 156 also reconstructs the facial texture map, it is not necessarily required in the texture image blending unit 172, so it may be discarded.
- the texture image blending unit 172 blends the initial texture image 1682 reconstructed in the initial model construction stage and the facial texture image 1666 reconstructed by the facial texture reconstruction unit 156 to reconstruct a blended facial texture image 1824. To construct. That is, the texture image blending unit 172 blends the reconstructed facial texture image (initial texture image 1682) with the texture image (initial texture image 1682) included in the texture data (initial texture data 168), Reconstruct the texture image of the person (blended face texture image 1824) captured in .
- FIG. 9(C) shows an example of a reconstructed blended face texture image 1824.
- FIG. 10 is a schematic diagram for explaining the blending process in information processing system 1 according to the present embodiment.
- texture image blending unit 172 uses mask 1826 to add face texture image 1666 to initial face texture image 1686 of initial texture image 1682 (initial face texture image 1686 and modified body texture image 1642A). The blending produces modified face texture image 1686A.
- a blended face texture image 1824 is generated by performing a blending process on the initial face texture image 1686 of the initial texture image 1682 .
- the texture image blending unit 172 superimposes, on the initial face texture image 1686 , the result of the face texture image 1666 that has passed through the mask 1826 .
- the texture image blending unit 172 superimposes the result of the mask transmitted through the texture image (blended face texture image 1824) of the person captured by the camera 140 on the initial face texture image 1686 included in the initial texture data 168. do.
- the mask 1826 may be generated, for example, by assigning the reliability of each pixel of the facial texture data 166 reconstructed by the facial texture reconstruction unit 156 as intensity (transparency).
- the mask 1826 may be generated based on the face texture image 1666. More specifically, among pixels included in face texture image 1666, pixels whose pixel values exceed a predetermined threshold value are assigned “1” (transparent), and other pixels are assigned “0” (blocked). ). Subsequently, a minimization filter is applied using a square window, and a blurring filter (eg, Gaussian filter, box filter, etc.) is applied to the edges.
- a minimization filter is applied using a square window, and a blurring filter (eg, Gaussian filter, box filter, etc.) is applied to the edges.
- mask 1826 By using such a mask 1826, blending in which the periphery of the face texture image 1666 superimposed on the initial face texture image 1686 is gradually changed can be realized. That is, mask 1826 would be configured to have a continuously varying transmittance.
- facial expressions that reflect the video of the current frame can be reproduced in real time, while hairstyles and the like can be stably reproduced using the initial texture image 1682 .
- information such as facial expressions reconstructed from the video of each frame is used to reflect it in the 3D model in real time, but it is not necessarily reconstructed from the video of the frame.
- the information of the initial facial texture image 1686 is reflected in the 3D model for the texture of the area other than the facial area of the head.
- the facial shape reconstruction unit 174 reconstructs parameters (facial expression parameters 184 ) representing each of the facial expression, movement, and 3D shape based on the image of the facial region 163 extracted from the 2D image 146 . That is, the face shape reconstruction unit 174 corresponds to a face shape reconstruction unit that reconstructs the 3D shape of the face from the 2D image of the person captured by the camera 140 .
- the face shape reconstruction unit 174 may employ a known algorithm such as "DECA" as described above.
- FIG. 9(D) shows an example of visually expressing the parameters (facial expression parameters 184) representing each of the reconstructed facial expression, movement, and 3D shape.
- the pose estimation unit 176 estimates a body pose (orientation) for each frame from the 2D video 146 . That is, the pose estimation unit 176 estimates the pose of the person from the 2D image of the person captured by the camera 140 .
- Body pose data 186 is output from the pose estimation unit 176 for each frame. Typically, body pose data 186 includes information such as the angles of each joint.
- a known pose estimation algorithm can be employed for the pose estimation unit 176 .
- FIG. 9(E) shows an example of visually representing the pose estimation process and the estimated body pose data 186 .
- the shape integration unit 178 inputs body pose data 186 and facial expression parameters 184 to the initial 3D shape data 162 reconstructed in the initial model construction stage, thereby obtaining a 3D shape of the body corresponding to the captured 2D image 146. to rebuild.
- the shape integration unit 178 creates a 3D shape of the body corresponding to the pose specified by the body pose data 186 and the expression defined by the facial expression parameters 184 based on the initial 3D shape data 162. rebuild.
- integrated 3D shape data 188 representing a 3D shape that integrates the 3D shape of the body and the 3D shape of the face is reconstructed.
- the shape integration unit 178 reconstructs the integrated 3D shape data 188 using not only the initial 3D shape data 162 but also 3D shape data obtained by incorporating the head 3D shape data 167 into the initial 3D shape data 162.
- the shape integration unit 178 determines the correspondence relationship based on the initial texture map 1684 (the modified body texture map 1644A and the face texture map 1664), and then integrates the 3D shape of the body and the 3D shape of the face.
- the shape integration unit 178 reconstructs the 3D shape of the body corresponding to the pose estimated based on the initial 3D shape data 162 (3D shape data), and the reconstructed 3D shape of the body,
- the 3D shape of the face reconstructed based on the facial expression parameters 184 is integrated to reconstruct the 3D shape of the person captured by the camera 140 (integrated 3D shape data 188).
- the shape integration unit 178 integrates the reconstructed 3D shape of the body and the reconstructed 3D shape of the face based on the texture map (initial texture map 1684) included in the initial texture data 168. , the reproducibility can be improved.
- FIG. 9(F) shows an example of visually representing the reconstructed integrated 3D shape data 188 .
- the 3D model generator 180 integrates the 3D shape based on the integrated 3D shape data 188 and the blended face texture image 1824 . Also, the 3D model generator 180 outputs a 3D model 190 viewed from the specified viewpoint.
- the 3D model generation unit 180 based on the 3D shape of the person captured by the camera 140 (integrated 3D shape data 188) and the texture image of the person captured by the camera 140 (blended face texture image 1824), A 3D model 190 of the person captured by the camera 140 is generated.
- the initial texture map 1684 may be referred to for combining the integrated 3D shape data 188 and the blended face texture image 1824 (texture image mapping). That is, the 3D model generation unit 180 generates the 3D shape of the person (integrated 3D shape data 188) and the texture image of the person (blended face texture image 1824) based on the initial texture map 1684 included in the initial texture data 168 (texture data). ) may be integrated.
- FIG. 9(F) shows an example of visually expressing the state of viewing the 3D model 190 from multiple viewpoints. Note that the 3D model generation unit 180 does not have to simultaneously display 3D models viewed from a plurality of viewpoints as shown in FIG. 9F, and outputs a 3D model viewed from a designated single viewpoint.
- the initial model (initial 3D shape data 162 and initial texture data 168) may be constructed in advance and used as appropriate at the stage where the 3D model needs to be reproduced.
- FIG. 11 is a schematic diagram showing another example of the system configuration of the information processing system 1 according to this embodiment.
- server device 300 pre-stores initial 3D shape data 162 and initial texture data 168 for each user.
- the server device 300 provides the designated initial 3D shape data 162 and initial texture data 168 in response to requests from the information processing devices 100-3 and 100-4.
- Each of information processing devices 100-3 and 100-4 uses initial 3D shape data 162 and initial texture data 168 provided from server device 300 to execute a process of generating a 3D model (3D model reproduction step). .
- the initial 3D shape data 162 and the initial texture data 168 do not necessarily have to be created based on a 2D image of the user using the information processing device 100 .
- texture images reconstructed by photographing a person are blended.
- a 3D model of the person can be reproduced.
- the information processing apparatuses 100-1 and 100-2 and the information processing apparatus 200 shown in FIG. step) may be performed.
- the processing that each information processing device takes charge of can be arbitrarily designed.
- information processing system 1 can generate a 3D model of a person from one frame of 2D video instead of a plurality of 2D videos captured by a plurality of cameras. By reconstructing the shape and texture of the body and face, respectively, facial expressions and gestures can be reproduced with higher accuracy.
- the 3D model when reproducing the 3D model, can be generated from the 2D image captured by the camera for one frame, so the processing load can be reduced compared to the case of using a plurality of 2D images captured by a plurality of cameras. 3D models can be reproduced in real time.
- 1 information processing system 2 network, 10 person, 20, 190 3D model, 100, 200 information processing device, 102 CPU, 104 GPU, 106 main memory, 108 display, 110 network interface, 112 input device, 114 optical drive, 116 Optical disc, 118 Camera interface, 120 Storage, 122 Initial model construction program, 124 Reproduction program, 126, 162 3D shape data, 140 Camera, 142 Image acquisition unit, 144 Multi-viewpoint image, 146 2D image, 150 Body 3D shape reconstruction 152 3D shape correction unit 154 body texture reconstruction unit 156 face texture reconstruction unit 157 head 3D shape reconstruction unit 158 texture integration unit 160 body 3D shape data 163, 163A, 163B face region, 164 body texture data, 166 face texture data, 167 head 3D shape data, 168 initial texture data, 170 stabilization unit, 172 texture image blending unit, 174 face shape reconstruction unit, 176 pose estimation unit, 178 shape integration unit, 180 3D model generator, 184 facial expression parameters, 186 body pose data, 188 integrated 3D
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
情報処理システムは、カメラで撮像された人物の2D映像から顔のテクスチャを再構築する顔テクスチャ再構築部と、人物の2D映像から顔の3D形状を再構築する顔形状再構築部と、人物の2D映像から当該人物のポーズを推定するポーズ推定部と、3D形状データに基づいて推定されたポーズに対応する身体の3D形状を再構築するとともに、再構築された身体の3D形状と再構築された顔の3D形状とを統合して、人物の3D形状を再構築する形状統合部と、テクスチャデータに含まれるテクスチャ画像に再構築された顔のテクスチャ画像をブレンディングして、人物のテクスチャ画像を再構築するテクスチャ再構築部と、カメラで撮像された人物の3D形状およびカメラで撮像された人物のテクスチャ画像に基づいて、人物の3Dモデルを生成するモデル生成部とを含む。
Description
本発明は、3Dモデルを再現するための情報処理システム、情報処理方法および情報処理プログラムに関する。
人物をより現実に近い形で表現する3Dモデルを再構築し、再構築した3Dモデルを遠隔地に伝送するとともに、XR(VR/AR/MR)の技術を用いて3D空間を共有する、遠隔のコミュニケーションを提供する技術が提案されている。
例えば、非特許文献1は、デプスセンサを用いて人物の3D形状とテクスチャとを取得し、取得した3D形状およびテクスチャを遠隔地に伝送し、MR(複合現実)ヘッドセットを用いて当該人物の3Dモデルを実空間に重畳した状態でコミュニケーションできるシステムを開示する。また、人物の3D形状は、複数のカメラを用いて取得されることもある。
M. Joachimczak, J. Liu, H. Ando, 2017.Real Time Mixed Reality Telepresence via 3D Reconstruction with HoloLens and Commodity Depth Sensors. In Proceedings of 19th ACM International Conference on Multimodal Interaction (ICMI'17). ACM, New York, NY, USA, 2 pages. https://doi.org/10.1145/3136755.3143031
上述の先行技術においては、デプスセンサまたは複数のカメラが必要であり、装置構成が複雑化し得る。そのため、1つのカメラで撮像した人物の2D映像から、当該人物の3D形状とテクスチャとを取得して、当該人物の3Dモデルを遠隔地に伝送して再現できる手法が要望されている。
本発明の一つ目的は、より簡素化された構成で人物の3Dモデルを再現できる構成を提供することである。
ある実施の形態に従う情報処理システムは、カメラと、予め作成された、身体の3D形状を示す3D形状データと、当該身体のテクスチャを示すテクスチャデータとを格納する記憶部と、カメラで撮像された人物の2D映像から顔のテクスチャを再構築する顔テクスチャ再構築部と、カメラで撮像された人物の2D映像から顔の3D形状を再構築する顔形状再構築部と、カメラで撮像された人物の2D映像から当該人物のポーズを推定するポーズ推定部と、3D形状データに基づいて推定されたポーズに対応する身体の3D形状を再構築するとともに、再構築された身体の3D形状と再構築された顔の3D形状とを統合して、カメラで撮像された人物の3D形状を再構築する形状統合部と、テクスチャデータに含まれるテクスチャ画像に再構築された顔のテクスチャ画像をブレンディングして、カメラで撮像された人物のテクスチャ画像を再構築するテクスチャ再構築部と、カメラで撮像された人物の3D形状およびカメラで撮像された人物のテクスチャ画像に基づいて、カメラで撮像された人物の3Dモデルを生成するモデル生成部とを含む。
テクスチャデータは、再構築された身体の3D形状に対応するテクスチャ画像、および、再構築された顔の3D形状に対応するテクスチャ画像と、再構築された身体の3D形状に対応するテクスチャマップ、および、再構築された顔の3D形状に対応するテクスチャマップとを含んでいてもよい。
情報処理システムは、カメラで撮像された人物の複数の2D映像から身体の3D形状を再構築する身体形状再構築部と、カメラで撮像された人物の複数の2D映像から頭部の3D形状を再構築する頭部形状再構築部と、再構築された身体の3D形状と再構築された頭部の3D形状との対応関係を決定し、当該決定された3D形状の対応関係に基づいて、身体の3D形状に対応するテクスチャマップと頭部の3D形状に対応するテクスチャマップとの対応関係を決定し、当該決定されたテクスチャマップの対応関係に基づいて、身体の3D形状に対応するテクスチャ画像から頭部の3D形状に対応するテクスチャ画像を生成するテクスチャ統合部とをさらに含んでいてもよい。
形状統合部は、テクスチャデータに含まれるテクスチャマップに基づいて、再構築された身体の3D形状と再構築された顔の3D形状とを統合するようにしてもよい。
モデル生成部は、テクスチャデータに含まれるテクスチャマップに基づいて、人物の3D形状と人物のテクスチャ画像とを統合するようにしてもよい。
テクスチャ再構築部は、カメラで撮像された人物のテクスチャ画像のうちマスクを透過した結果をテクスチャデータに含まれるテクスチャ画像に重畳するようにしてもよい。
マスクは、透過度が連続的に変化するように構成されていてもよい。
カメラで撮像された人物の2D映像に設定されたウィンドウに対応する部分映像が顔テクスチャ再構築部および顔形状再構築部に入力されてもよい。情報処理システムは、2D映像における人物の位置を時間的に平滑化してウィンドウを設定する安定化部をさらに含んでいてもよい。
カメラで撮像された人物の2D映像に設定されたウィンドウに対応する部分映像が顔テクスチャ再構築部および顔形状再構築部に入力されてもよい。情報処理システムは、2D映像における人物の位置を時間的に平滑化してウィンドウを設定する安定化部をさらに含んでいてもよい。
テクスチャ統合部は、身体の3D形状に対応するテクスチャ画像と頭部の3D形状に対応するテクスチャ画像とを統合するとともに、身体の3D形状に対応するテクスチャマップと頭部の3D形状に対応するテクスチャマップとを統合することで、テクスチャデータを生成するようにしてもよい。
別の実施の形態に従う情報処理方法は、カメラで撮像された人物の2D映像から顔のテクスチャを再構築するステップと、カメラで撮像された人物の2D映像から顔の3D形状を再構築するステップと、カメラで撮像された人物の2D映像から当該人物のポーズを推定するステップと、予め作成された身体の3D形状を示す3D形状データに基づいて推定されたポーズに対応する身体の3D形状を再構築するステップと、再構築された身体の3D形状と再構築された顔の3D形状とを統合して、カメラで撮像された人物の3D形状を再構築するステップと、予め作成された身体のテクスチャを示すテクスチャデータに含まれるテクスチャ画像に再構築された顔のテクスチャ画像をブレンディングして、カメラで撮像された人物のテクスチャ画像を再構築するステップと、カメラで撮像された人物の3D形状およびカメラで撮像された人物のテクスチャ画像に基づいて、カメラで撮像された人物の3Dモデルを生成するステップとを含む。
さらに別の実施の形態に従えば、コンピュータに上記の方法を実行させるための情報処理プログラムが提供される。
本発明によれば、より簡素化された構成で人物の3Dモデルを再現できる。
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰り返さない。
本明細書においては、3次元あるいは立体を「3D」と略称し、2次元あるいは平面を「2D」と略称する。
[A.システム構成]
図1は、本実施の形態に従う情報処理システム1のシステム構成の一例を示す模式図である。図1には、例えば、情報処理装置100-1,100-2(以下、「情報処理装置100」と総称することもある。)および情報処理装置200がネットワーク2を介して接続されている構成例を示す。情報処理装置100-1にはカメラ140-1が接続されており、情報処理装置100-2にはカメラ140-2が接続されている。
図1は、本実施の形態に従う情報処理システム1のシステム構成の一例を示す模式図である。図1には、例えば、情報処理装置100-1,100-2(以下、「情報処理装置100」と総称することもある。)および情報処理装置200がネットワーク2を介して接続されている構成例を示す。情報処理装置100-1にはカメラ140-1が接続されており、情報処理装置100-2にはカメラ140-2が接続されている。
情報処理装置100は、人物10の初期モデルを予め取得している。情報処理装置100は、カメラ140で人物10を連続的に撮像することで、人物10の3Dモデルを再現する。なお、再現される3Dモデルは、撮像される人物10の動きや表情を反映してリアルタイムに変化する。再現される人物10の3Dモデルは、3Dアバター、あるいは、単にアバターとも称される。
図1に示す例では、カメラ140-1の視野範囲内には人物10-1が存在しており、カメラ140-2の視野範囲内には人物10-2が存在している。情報処理装置100-1は、人物10-1を撮像することで情報処理装置200の画面上などに、人物10-1の3Dモデル20-1を再現する。同様に、情報処理装置100-2は、人物10-2を撮像することで情報処理装置200の画面上などに、人物10-2の3Dモデル20-2を再現する。情報処理装置200の画面上に再現される3Dモデル20-1,20-2は、任意の3D空間に存在させることができる。
[B.ハードウェア構成例]
図2は、本実施の形態に従う情報処理システム1を構成する情報処理装置100のハードウェア構成の一例を示す模式図である。典型的には、情報処理装置100は、汎用コンピュータを用いて実現できる。
図2は、本実施の形態に従う情報処理システム1を構成する情報処理装置100のハードウェア構成の一例を示す模式図である。典型的には、情報処理装置100は、汎用コンピュータを用いて実現できる。
図2を参照して、情報処理装置100は、主要なハードウェアコンポーネントとして、CPU102と、GPU104と、主メモリ106と、ディスプレイ108と、ネットワークインターフェイス(I/F:interface)110と、入力デバイス112と、光学ドライブ114と、カメラインターフェイス(I/F)118と、ストレージ120とを含む。
CPU102および/またはGPU104は、本実施の形態に従う情報処理方法を実行するプロセッサである。CPU102およびGPU104は、複数個配置されてもよいし、複数のコアを有していてもよい。
主メモリ106は、プロセッサ(CPU102および/またはGPU104)が処理を実行するにあたって、プログラムコードやワークデータなどを一時的に格納(あるいは、キャッシュ)する記憶領域であり、例えば、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などの揮発性記憶装置で構成される。
ディスプレイ108は、処理に係るユーザインターフェイスや処理結果などを出力する表示部であり、例えば、LCD(liquid crystal display)や有機EL(electroluminescence)ディスプレイなどで構成される。
ネットワークインターフェイス110は、ネットワーク2に接続された任意の情報処理装置などとの間でデータをやり取りする。
入力デバイス112は、ユーザからの指示や操作などを受け付けるデバイスであり、例えば、キーボード、マウス、タッチパネル、ペンなどで構成される。
光学ドライブ114は、CD-ROM(compact disc read only memory)、DVD(digital versatile disc)などの光学ディスク116に格納されている情報を読出して、他のコンポーネントへ出力する。光学ディスク116は、非一過的(non-transitory)な記録媒体の一例であり、任意のプログラムを不揮発的に格納した状態で流通する。光学ドライブ114が光学ディスク116からプログラムを読み出して、ストレージ120などにインストールすることで、コンピュータが情報処理装置100として機能するようになる。したがって、本発明の主題は、ストレージ120などにインストールされたプログラム自体、または、本実施の形態に従う機能や処理を実現するためのプログラムを格納した光学ディスク116などの記録媒体でもあり得る。
図2には、非一過的な記録媒体の一例として、光学ディスク116などの光学記録媒体を示すが、これに限らず、フラッシュメモリなどの半導体記録媒体、ハードディスクまたはストレージテープなどの磁気記録媒体、MO(magneto-optical disk)などの光磁気記録媒体を用いてもよい。
カメラインターフェイス118は、カメラ140が撮像した映像を取得するとともに、カメラ140に対して撮像に関する指令などを与える。
ストレージ120は、コンピュータを情報処理装置100として機能させるために必要なプログラムおよびデータを格納する。例えば、ハードディスク、SSD(solid state drive)などの不揮発性記憶装置で構成される。
より具体的には、ストレージ120は、図示しないOS(operating system)の他、初期モデル構築の処理(初期モデル構築段階)を実現する初期モデル構築プログラム122と、3Dモデルを生成する処理(3Dモデル再現段階)を実現する3Dモデル再現プログラム124とを格納している。これらの情報処理プログラムは、コンピュータの一例である情報処理装置100に本実施の形態に従う各種処理を実行させる。
また、初期モデル構築段階において生成される初期3D形状データ162および初期テクスチャデータ168がストレージ120に格納されていてもよい。すなわち、ストレージ120は、予め作成された、身体の3D形状を示す3D形状データ126と、身体のテクスチャを示す初期テクスチャデータ168(テクスチャデータ)とを格納する記憶部に相当する。
図2には、単一のコンピュータを用いて情報処理装置100を構成する例を示すが、これに限らず、コンピュータネットワークを介して接続された複数のコンピュータが明示的または黙示的に連携して、本実施の形態に従う情報処理方法を実現するようにしてもよい。
プロセッサ(CPU102および/またはGPU104)がプログラムを実行することで実現される機能の全部または一部を、集積回路などのハードワイヤード回路(hard-wired circuit)を用いて実現してもよい。例えば、ASIC(application specific integrated circuit)やFPGA(field-programmable gate array)などを用いて実現してもよい。
当業者であれば、本発明が実施される時代に応じた技術を適宜用いて、本実施の形態に従う情報処理装置100を実現できるであろう。
また、情報処理システム1を構成する情報処理装置200のハードウェア構成についても、図2と同様であるので、詳細な説明は繰り返さない。
[C.3Dモデル再現に係る処理手順]
3Dモデルを再現するためには、典型的には、初期モデル構築の処理(初期モデル構築段階)および3Dモデルを生成する処理(3Dモデル再現段階)が実行される。
3Dモデルを再現するためには、典型的には、初期モデル構築の処理(初期モデル構築段階)および3Dモデルを生成する処理(3Dモデル再現段階)が実行される。
本明細書において、「テクスチャデータ」は、テクスチャ画像およびテクスチャマップを総称する用語である。
(c1:初期モデル構築段階)
図3は、本実施の形態に従う情報処理システム1の初期モデル構築段階における処理手順を示すフローチャートである。図3に示す各処理は、典型的には、情報処理装置100のプロセッサがプログラム(図2に示す初期モデル構築プログラム122)を実行することで実現される。
図3は、本実施の形態に従う情報処理システム1の初期モデル構築段階における処理手順を示すフローチャートである。図3に示す各処理は、典型的には、情報処理装置100のプロセッサがプログラム(図2に示す初期モデル構築プログラム122)を実行することで実現される。
図3を参照して、情報処理装置100は、カメラ140が撮像した2D映像(1フレーム分)を取得する(ステップS100)。情報処理装置100は、所定フレーム数の2D映像を取得したか否かを判断する(ステップS102)。所定フレーム数の2D映像が取得されていなければ(ステップS102においてNO)、ステップS100以下の処理が繰り返される。
なお、情報処理装置100は、ユーザから明示的に指示を受けてカメラ140により撮像を開始してもよいし、予め定められた周期で撮像を繰り返してもよい。
続いて、情報処理装置100は、取得した複数の2D映像(複数視点映像144)に基づいて、撮像された身体の3D形状を示す身体3D形状データ160を再構築する(ステップS104)。そして、情報処理装置100は、身体3D形状データ160に含まれるディスプレイスメントマップ内の顔領域に対応する領域を平坦化する(ステップS106)。最終的に、形状パラメータおよび平坦化後のディスプレイスメントマップを初期3D形状データ162として出力する(ステップS108)。
また、情報処理装置100は、取得した複数の2D映像(複数視点映像144)に基づいて、身体のテクスチャを示す身体テクスチャデータ(身体テクスチャ画像1642および身体テクスチャマップ1644)を再構築する(ステップS110)。
また、情報処理装置100は、取得した複数の2D映像(複数視点映像144)に基づいて、撮像された頭部の3D形状を示す頭部3D形状データ167を再構築する(ステップS112)。
情報処理装置100は、テクスチャ統合部158は、身体テクスチャデータ164および顔テクスチャデータ166を統合して、初期テクスチャデータ168(初期テクスチャ画像1682および初期テクスチャマップ1684)を再構築する(ステップS114)。
なお、ステップS104~S108の処理と、ステップS110~S114の処理との実行順序は問わない。あるいは、これらの処理を並列的に実行してもよい。
最終的に、情報処理装置100は、人物の初期3D形状データ162および初期テクスチャデータ168を初期モデルとして格納する(ステップS116)。
(c2:3Dモデル再現段階)
図4は、本実施の形態に従う情報処理システム1の3Dモデル再現段階における処理手順を示すフローチャートである。図4に示す各処理は、典型的には、情報処理装置100のプロセッサがプログラム(図2に示す3Dモデル再現プログラム124)を実行することで実現される。
図4は、本実施の形態に従う情報処理システム1の3Dモデル再現段階における処理手順を示すフローチャートである。図4に示す各処理は、典型的には、情報処理装置100のプロセッサがプログラム(図2に示す3Dモデル再現プログラム124)を実行することで実現される。
図4を参照して、情報処理装置100は、カメラ140が撮像した2D映像(1フレーム分)を取得する(ステップS200)。
情報処理装置100は、取得した2D映像(1フレーム分)に含まれる顔領域を検出し(ステップS202)、過去の顔領域の検出結果に基づいて、今回のウィンドウの位置およびサイズを決定する(ステップS204)。
情報処理装置100は、決定されたウィンドウに対応する部分の2D映像に基づいて、撮像された顔の画像を示す顔テクスチャ画像1666を再構築する(ステップS206)。すなわち、情報処理装置100は、カメラ140で撮像された人物の2D映像から顔のテクスチャを再構築する。
続いて、情報処理装置100は、初期モデル構築段階において再構築された初期テクスチャ画像1682(初期顔テクスチャ画像1686)に顔テクスチャ画像1666をブレンディングして、ブレンディッド顔テクスチャ画像1824を再構築する(ステップS208)。すなわち、情報処理装置100は、予め作成された身体のテクスチャを示すテクスチャデータに含まれるテクスチャ画像(初期顔テクスチャ画像1686)に再構築された顔のテクスチャ画像(顔テクスチャ画像1666)をブレンディングして、カメラ140で撮像された人物のテクスチャ画像(ブレンディッド顔テクスチャ画像1824)を再構築する。
また、情報処理装置100は、決定されたウィンドウに対応する部分の2D映像に基づいて、顔の表情、動き、3D形状の各々を示すパラメータ(顔表情パラメータ184)を再構築する(ステップS210)。すなわち、情報処理装置100は、カメラ140で撮像された人物の2D映像から顔の3D形状を再構築する。
また、情報処理装置100は、2D映像(1フレーム分)からフレーム毎の身体のポーズ(姿勢)を推定する(ステップS212)。すなわち、情報処理装置100は、カメラ140で撮像された人物の2D映像から当該人物のポーズを推定する。推定されたポーズは、身体ポーズデータ186としてフレーム毎に出力される。
ステップS210の処理と、ステップS212の処理とは、並行して実行されてもよいし、直列的に実行されてもよい。処理の実行順序はいずれであってもよい。
情報処理装置100は、初期モデル構築段階において再構築された初期3D形状データ162に、身体ポーズデータ186および顔表情パラメータ184を入力することで、身体の3D形状および顔の3D形状を統合した3D形状を示す統合3D形状データ188を再構築する(ステップS214)。より具体的には、情報処理装置100は、予め作成された身体の3D形状を示す3D形状データ(初期3D形状データ162)に基づいて推定されたポーズに対応する身体の3D形状(統合3D形状データ188)を再構築する。また、情報処理装置100は、再構築された身体の3D形状と再構築された顔の3D形状とを統合して、カメラ140で撮像された人物の3D形状(統合3D形状データ188)を再構築する。
なお、ステップS202~S208の処理と、ステップS210~S214の処理とは、並行して実行されてもよいし、直列的に実行されてもよい。処理の実行順序はいずれであってもよい。
情報処理装置100は、統合3D形状データ188とブレンディッド顔テクスチャ画像1824とを統合し(ステップS216)、指定された1つの視点から見た3Dモデルを出力する(ステップS218)。すなわち、情報処理装置100は、カメラ140で撮像された人物の3D形状およびカメラ140で撮像された人物のテクスチャ画像に基づいて、カメラ140で撮像された人物の3Dモデル190を生成する。
ステップS200~S218の処理は、フレーム毎に繰り返される。
[D.初期モデル構築段階における処理の詳細]
本実施の形態に従う情報処理システム1の初期モデル構築段階においては、人物を撮像することで、3Dモデルを再現するための初期モデルを構築する。構築される初期モデルは、人物の身体および顔の情報をそれぞれ反映したものである。
[D.初期モデル構築段階における処理の詳細]
本実施の形態に従う情報処理システム1の初期モデル構築段階においては、人物を撮像することで、3Dモデルを再現するための初期モデルを構築する。構築される初期モデルは、人物の身体および顔の情報をそれぞれ反映したものである。
図5は、本実施の形態に従う情報処理システム1の初期モデル構築段階を実現するための機能構成例を示す模式図である。図6は、本実施の形態に従う情報処理システム1の初期モデル構築段階において生成されるデータの一例を示す図である。
図5に示す各機能は、典型的には、情報処理装置100のプロセッサがプログラム(図2に示す初期モデル構築プログラム122)を実行することで実現される。図5を参照して、情報処理装置100は、映像取得部142と、身体3D形状再構築部150と、3D形状修正部152と、身体テクスチャ再構築部154と、顔テクスチャ再構築部156と、頭部3D形状再構築部157と、テクスチャ統合部158とを含む。
(d1:映像取得部142)
映像取得部142は、カメラ140が撮像した2D映像を取得する。このとき、映像取得部142は、3Dモデルを再現する対象となる人物を複数視点で撮像した複数の2D映像(複数視点映像144)を取得する。人物に対してカメラ140の位置を異ならせて複数視点で撮像するようにしてもよいし、カメラ140を固定した状態で人物が身体を回転させて複数視点での撮像を実現してもよい。また、カメラ140を複数用意して、それぞれのカメラ140で人物を撮像することで複数の2D映像を取得してもよい。図6(A)には、8つの視点で人物を撮像した複数視点映像144の例を示す。
映像取得部142は、カメラ140が撮像した2D映像を取得する。このとき、映像取得部142は、3Dモデルを再現する対象となる人物を複数視点で撮像した複数の2D映像(複数視点映像144)を取得する。人物に対してカメラ140の位置を異ならせて複数視点で撮像するようにしてもよいし、カメラ140を固定した状態で人物が身体を回転させて複数視点での撮像を実現してもよい。また、カメラ140を複数用意して、それぞれのカメラ140で人物を撮像することで複数の2D映像を取得してもよい。図6(A)には、8つの視点で人物を撮像した複数視点映像144の例を示す。
なお、初期モデルの再構築に用いる複数視点映像144は、5~10フレーム分の2D映像が好ましい。
(d2:身体3D形状再構築部150)
身体3D形状再構築部150は、複数視点映像144に基づいて、身体の3D形状を再構築する。すなわち、身体3D形状再構築部150は、カメラ140で撮像された人物の複数の2D映像から身体の3D形状を再構築して、撮像された身体の3D形状を示す身体3D形状データ160を出力する。図6(B)には、再構築された身体3D形状データ160を視覚的に表現した例を示す。
身体3D形状再構築部150は、複数視点映像144に基づいて、身体の3D形状を再構築する。すなわち、身体3D形状再構築部150は、カメラ140で撮像された人物の複数の2D映像から身体の3D形状を再構築して、撮像された身体の3D形状を示す身体3D形状データ160を出力する。図6(B)には、再構築された身体3D形状データ160を視覚的に表現した例を示す。
より具体的には、身体3D形状再構築部150は、2D映像から人物の身体の3D形状を示すモデルを再構築する。このような3D形状を示すデータの再構築には、「Tex2Shape」(Alldieck, T.; Pons-Moll, G.; Theobalt, C.; Magnor, M. Tex2Shape: Detailed Full Human Body Geometry From a Single Image. In 2019 IEEE/CVF International Conference on Computer Vision (ICCV); 2019; pp 2293-2303. https://doi.org/10.1109/ICCV.2019.00238.)といった公知のアルゴリズムを用いることができる。
「Tex2Shape」は、形状パラメータ(形状を示す主成分特徴β)およびディスプレイスメントマップを出力する。なお、「Tex2Shape」がSMPLフォーマットのモデルを出力する場合には、SMPLフォーマットに比較して4倍の解像度を有するSMPL-Xフォーマットにさらに変換するようにしてもよい。
身体3D形状再構築部150は、人物の身体の3D形状を示す情報として身体3D形状データ160を出力する。身体3D形状データ160は、典型的には、メッシュ形式のデータからなる。
(d3:3D形状修正部152)
3D形状修正部152は、身体3D形状再構築部150が再構築した身体3D形状データ160のうち、顔領域を平坦化する。3Dモデル再現段階において、人物の顔の再現には別のモデルが用いられるので、再構築される3D形状の顔領域については変異させないことが好ましい。
3D形状修正部152は、身体3D形状再構築部150が再構築した身体3D形状データ160のうち、顔領域を平坦化する。3Dモデル再現段階において、人物の顔の再現には別のモデルが用いられるので、再構築される3D形状の顔領域については変異させないことが好ましい。
そのため、3D形状修正部152は、推定された顔領域に対応するディスプレイスメントマップ内の領域を平坦領域に補正する。すなわち、3D形状修正部152は、顔領域については起伏を生じない平坦な領域に修正する。このような平坦化によって、3Dモデル再現段階における人物の頭部を再現する処理をより効率的に行うことができる。
より具体的には、3D形状修正部152は、身体3D形状データ160の再構築に用いられた2D映像に含まれる人物を抽出するとともに、抽出された人物の人体領域(ボディパーツ)を推定する。例えば、人物の顔、手、足などに対応する領域が推定される。このような人体領域に推定には、「DensePose」(Gueler, R. A.; Neverova, N.; Kokkinos, I. DensePose: Dense Human Pose Estimation in the Wild. In 2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition; 2018; pp 7297-7306. https://doi.org/10.1109/CVPR.2018.00762.)といった公知のアルゴリズムを利用することができる。
そして、3D形状修正部152は、推定された顔領域に対応するディスプレイスメントマップ内の領域の値を、平坦領域を示す値に更新する。
また、人物の指などについても変異領域としてモデル化されやすいので、平坦領域に補正することが好ましい。
最終的に、3D形状修正部152は、顔領域を平坦化した3D形状を示す初期3D形状データ162を出力する。図6(C)には、初期3D形状データ162を視覚的に表現した例を示す。
(d4:身体テクスチャ再構築部154)
身体テクスチャ再構築部154は、カメラ140で撮像された人物の複数の2D映像(複数視点映像144)から身体のテクスチャを再構築する。より具体的には、身体テクスチャ再構築部154は、身体テクスチャ画像1642および身体テクスチャマップ1644を再構築する。身体テクスチャ画像1642および身体テクスチャマップ1644をまとめて「身体テクスチャデータ164」と称することもある。
身体テクスチャ再構築部154は、カメラ140で撮像された人物の複数の2D映像(複数視点映像144)から身体のテクスチャを再構築する。より具体的には、身体テクスチャ再構築部154は、身体テクスチャ画像1642および身体テクスチャマップ1644を再構築する。身体テクスチャ画像1642および身体テクスチャマップ1644をまとめて「身体テクスチャデータ164」と称することもある。
図6(D)には、身体テクスチャ画像1642および身体テクスチャマップ1644(身体テクスチャデータ164)の一例を示す。
身体テクスチャ再構築部154は、以下のような処理に従って、身体テクスチャデータ164を再構築する。
まず、身体テクスチャ再構築部154は、複数視点映像144に含まれる2D映像から人物のキーポイントを検出する。このようなキーポイントの検出には、「OpenPose」(Cao, Z.; Hidalgo, G.; Simon, T.; Wei, S.-E.; Sheikh, Y. OpenPose: Realtime Multi-Person 2D Pose Estimation Using Part Affinity Fields. IEEE Transactions on Pattern Analysis and Machine Intelligence 2021, 43 (1), 172-186. https://doi.org/10.1109/TPAMI.2019.2929257.)といった公知のアルゴリズムを用いることができる。
次に、身体テクスチャ再構築部154は、検出したキーポイントを利用して、2D映像に対してセマンティックセグメンテーションを行って、人物の人体領域(ボディパーツ)を推定する。このようなセマンティックセグメンテーションには、「PGN」(Gong, K.; Liang, X.; Li, Y.; Chen, Y.; Yang, M.; Lin, L. Instance-Level Human Parsing via Part Grouping Network. In Computer Vision - ECCV 2018; Ferrari, V., Hebert, M., Sminchisescu, C., Weiss, Y., Eds.; Lecture Notes in Computer Science; Springer International Publishing: Cham, 2018; pp 805-822. https://doi.org/10.1007/978-3-030-01225-0_47.)といった公知のアルゴリズムを用いることができる。
最終的に、身体テクスチャ再構築部154は、推定された人体領域を利用して、複数の2D映像(複数視点映像144)からテクスチャデータ(身体テクスチャ画像1642および身体テクスチャマップ1644)を再構築する。このようなテクスチャデータの再構築には、「Semantic Human Texture Stitching」(Alldieck, T.; Magnor, M.; Xu, W.; Theobalt, C.; Pons-Moll, G. Detailed Human Avatars from Monocular Video. In 2018 International Conference on 3D Vision (3DV); 2018; pp 98-109. https://doi.org/10.1109/3DV.2018.00022.)といった公知のアルゴリズムを用いることができる。
「Semantic Human Texture Stitching」は、SMPLフォーマットおよびSMPL-Xフォーマットのいずれでもテクスチャデータを出力可能である。上述したように、SMPL-Xフォーマットに従う身体3D形状データ160が用いられる場合には、同じくSMPL-Xフォーマットに従うテクスチャデータが用いられる。
ここで、SMPLフォーマット/SMPL-Xフォーマットは、テクスチャデータに含まれるテクスチャマップ(UVマッピング)と同じフォーマットを採用している。
(d5:顔テクスチャ再構築部156)
顔テクスチャ再構築部156は、カメラ140で撮像された人物の2D映像から顔のテクスチャを再構築する。初期モデル構築段階においては、顔テクスチャ再構築部156は、複数視点映像144に含まれる2D映像に基づいて、顔のテクスチャを再構築する。より具体的には、顔テクスチャ再構築部156は、顔テクスチャ画像1662および顔テクスチャマップ1664を再構築する。顔テクスチャ画像1662および顔テクスチャマップ1664をまとめて「顔テクスチャデータ166」と称することもある。後述するように、顔テクスチャ画像は、テクスチャ統合部158により再構築されるので、顔テクスチャ再構築部156が再構築する顔テクスチャ画像1662は破棄してもよい。
顔テクスチャ再構築部156は、カメラ140で撮像された人物の2D映像から顔のテクスチャを再構築する。初期モデル構築段階においては、顔テクスチャ再構築部156は、複数視点映像144に含まれる2D映像に基づいて、顔のテクスチャを再構築する。より具体的には、顔テクスチャ再構築部156は、顔テクスチャ画像1662および顔テクスチャマップ1664を再構築する。顔テクスチャ画像1662および顔テクスチャマップ1664をまとめて「顔テクスチャデータ166」と称することもある。後述するように、顔テクスチャ画像は、テクスチャ統合部158により再構築されるので、顔テクスチャ再構築部156が再構築する顔テクスチャ画像1662は破棄してもよい。
顔テクスチャ再構築部156は、以下のような処理に従って、顔テクスチャデータ166を再構築する。すなわち、「DECA」(Feng, Y.; Feng, H.; Black, M. J.; Bolkart, T. Learning an Animatable Detailed 3D Face Model from In-the-Wild Images. ACM Trans. Graph. 2021, 40 (4), 88:1-88:13. https://doi.org/10.1145/3450626.3459936.)といった公知のアルゴリズムを用いることができる。
「DECA」は、人物の顔を再現するためのFLAMEモデルパラメータ(顔の形状および表情を示す)およびFLAMEフォーマットに従うテクスチャデータを出力する。このように、カメラで撮像した人物の2D映像からFLAMEフォーマットに従う顔テクスチャデータ166が出力される。後述するように、テクスチャ統合部158は、FLAMEフォーマットに従う顔テクスチャデータ166を身体テクスチャデータ164に適用することで、両者を統合する。
なお、顔テクスチャ再構築部156は、3Dモデル再現段階においても顔テクスチャデータ166をフレーム毎に再構築する。
(d6:頭部3D形状再構築部157)
頭部3D形状再構築部157は、カメラ140で撮像された人物の複数の2D映像(複数視点映像144)から頭部の3D形状を再構築する。すなわち、頭部3D形状再構築部157は、撮像された頭部の3D形状を示す頭部3D形状データ167を再構築する。
頭部3D形状再構築部157は、カメラ140で撮像された人物の複数の2D映像(複数視点映像144)から頭部の3D形状を再構築する。すなわち、頭部3D形状再構築部157は、撮像された頭部の3D形状を示す頭部3D形状データ167を再構築する。
頭部3D形状再構築部157は、身体3D形状再構築部150と同様のアルゴリズムを用いて、2D映像から人物の頭部の3D形状を示すモデルを再構築する。頭部3D形状再構築部157は、頭部の3D形状を示す情報として頭部3D形状データ167を出力する。頭部3D形状データ167は、典型的には、メッシュ形式のデータからなる。
(d7:テクスチャ統合部158)
テクスチャ統合部158は、身体テクスチャデータ164および顔テクスチャデータ166を統合して、初期テクスチャデータ168(初期テクスチャ画像1682および初期テクスチャマップ1684)を再構築する。テクスチャ統合部158は、身体3D形状データ160と頭部3D形状データ167との対応関係に基づいて、身体テクスチャデータ164と顔テクスチャデータ166とを統合する。
テクスチャ統合部158は、身体テクスチャデータ164および顔テクスチャデータ166を統合して、初期テクスチャデータ168(初期テクスチャ画像1682および初期テクスチャマップ1684)を再構築する。テクスチャ統合部158は、身体3D形状データ160と頭部3D形状データ167との対応関係に基づいて、身体テクスチャデータ164と顔テクスチャデータ166とを統合する。
図6(E)に示すように、初期テクスチャ画像1682および初期テクスチャマップ1684の各々は、顔を含む頭部についての部分と、頭部以外の身体の部分とから構成される。
より具体的には、初期テクスチャ画像1682は、後述するような処理によって再構築される初期顔テクスチャ画像1686と、身体テクスチャ画像1642から頭部に対応する頭部部分画像1642Hを無効化した修正身体テクスチャ画像1642Aとからなる。
初期テクスチャマップ1684は、顔テクスチャマップ1664と、身体テクスチャマップ1644から頭部に対応する頭部部分マップ1644Hを無効化した修正身体テクスチャマップ1644Aとからなる。
図6(E)に示すように、初期テクスチャデータ168(テクスチャデータ)は、再構築される身体の3D形状に対応するテクスチャ画像(修正身体テクスチャ画像1642A)、および、再構築される顔の3D形状に対応するテクスチャ画像(初期顔テクスチャ画像1686)と、再構築される身体の3D形状に対応するテクスチャマップ(修正身体テクスチャマップ1644A)、および、再構築される顔の3D形状に対応するテクスチャマップ(顔テクスチャマップ1664)とを含む。
なお、図6(E)には、頭部部分画像1642Hおよび頭部部分マップ1644Hの無効化の一例として、削除されている状態を示すが、必ずしも削除されている必要はなく、処理に使用しないように設定すればよい。
図7は、本実施の形態に従う情報処理システム1の初期モデル構築段階におけるテクスチャ統合の処理を説明するための模式図である。テクスチャ統合部158は、以下のような5つの処理を実行する。
(1)身体3D形状データ160と頭部3D形状データ167とのアライメント
テクスチャ統合部158は、身体3D形状データ160および頭部3D形状データ167を共通の3D空間に写像することで、2つの形状データをアライメントする。ここで、身体3D形状データ160および頭部3D形状データ167は、同一の人物から再構築された3D形状を示すので、実質的に同一のトポロジーを有していると考えられる。
テクスチャ統合部158は、身体3D形状データ160および頭部3D形状データ167を共通の3D空間に写像することで、2つの形状データをアライメントする。ここで、身体3D形状データ160および頭部3D形状データ167は、同一の人物から再構築された3D形状を示すので、実質的に同一のトポロジーを有していると考えられる。
テクスチャ統合部158は、共通の顔の特徴的な部分(目や鼻など)に注目して、注目した部分が同一の座標となるように、それぞれの形状データを共通の3D空間に写像する。このようなアライメントを実現するための処理には、平行移動(transition)、回転(rotation)、縮小・拡大(scale)などの演算を含む座標変換行列が用いられる。
(2)メッシュ間の対応関係の決定
次に、テクスチャ統合部158は、アライメントされた2つの形状データの間で、メッシュ間の対応関係を決定する。すなわち、テクスチャ統合部158は、身体3D形状データ160に含まれるメッシュ(例えば、3つの頂点により定義される三角形の集合)と、頭部3D形状データ167に含まれるメッシュとの対応関係を決定する。
次に、テクスチャ統合部158は、アライメントされた2つの形状データの間で、メッシュ間の対応関係を決定する。すなわち、テクスチャ統合部158は、身体3D形状データ160に含まれるメッシュ(例えば、3つの頂点により定義される三角形の集合)と、頭部3D形状データ167に含まれるメッシュとの対応関係を決定する。
より具体的には、テクスチャ統合部158は、アライメント後の身体3D形状データ160に含まれる各メッシュについて、アライメント後の頭部3D形状データ167に含まれるメッシュのうち最も近接したメッシュを探索する。最終的に、テクスチャ統合部158は、メッシュ間の対応関係(例えば、身体3D形状データ160に含まれる各メッシュを示すインデックスと、頭部3D形状データ167に含まれる各メッシュを示すインデックスとの対応関係を示す配列)を決定する。
このように、テクスチャ統合部158は、再構築された身体の3D形状(身体3D形状データ160)と再構築された頭部の3D形状(頭部3D形状データ167)との対応関係を決定する。
(3)テクスチャマップ間の対応関係の決定
次に、テクスチャ統合部158は、身体テクスチャマップ1644および顔テクスチャマップ1664の間で対応関係を決定する。
次に、テクスチャ統合部158は、身体テクスチャマップ1644および顔テクスチャマップ1664の間で対応関係を決定する。
身体3D形状データ160と身体テクスチャマップ1644との間の対応関係(一対一)は既知であり、同様に、頭部3D形状データ167と顔テクスチャマップ1664との間の対応関係(一対一)も既知である。上述の処理によって、身体3D形状データ160と頭部3D形状データ167との対応関係(一対一)が決定されるので、この形状データの対応関係を利用して、テクスチャ統合部158は、テクスチャマップ間の対応関係を決定する。
このように、テクスチャ統合部158は、決定された3D形状の対応関係に基づいて、身体の3D形状(身体3D形状データ160)に対応するテクスチャマップ(身体テクスチャマップ1644)と頭部の3D形状(頭部3D形状データ167)に対応するテクスチャマップ(顔テクスチャマップ1664)との対応関係を決定する。
(4)初期顔テクスチャ画像の生成
次に、テクスチャ統合部158は、身体テクスチャマップ1644と顔テクスチャマップ1664との間の対応関係に基づいて、初期顔テクスチャ画像1686を生成する。
次に、テクスチャ統合部158は、身体テクスチャマップ1644と顔テクスチャマップ1664との間の対応関係に基づいて、初期顔テクスチャ画像1686を生成する。
より具体的には、テクスチャ統合部158は、顔テクスチャマップ1664の各座標に対応する身体テクスチャマップ1644の座標を決定し、当該決定した身体テクスチャマップ1644の座標における身体テクスチャ画像1642の画素値を顔テクスチャ画像の新たな画素値として適用する。すなわち、身体テクスチャマップ1644と顔テクスチャマップ1664との間の対応関係に基づいて、身体テクスチャ画像1642がマッピングされることで、新たな顔テクスチャ画像である初期顔テクスチャ画像1686が生成される。
このように、テクスチャ統合部158は、決定されたテクスチャマップの対応関係に基づいて、身体の3D形状(身体3D形状データ160)に対応するテクスチャ画像(身体テクスチャ画像1642)から頭部の3D形状(頭部3D形状データ167)に対応するテクスチャ画像(初期顔テクスチャ画像1686)を生成する。
(5)データ結合
最終的に、テクスチャ統合部158は、初期テクスチャデータ168(初期テクスチャ画像1682および初期テクスチャマップ1684)を再構築する。
最終的に、テクスチャ統合部158は、初期テクスチャデータ168(初期テクスチャ画像1682および初期テクスチャマップ1684)を再構築する。
より具体的には、テクスチャ統合部158は、身体テクスチャ画像1642のうち、頭部に対応する頭部部分画像1642Hを無効化した上で、生成された初期顔テクスチャ画像1686と結合する。初期テクスチャ画像1682は、修正身体テクスチャマップ1644Aと初期顔テクスチャ画像1686とを同じスケールに調整した上で、隣接配置したものに相当する。
また、テクスチャ統合部158は、身体テクスチャマップ1644のうち、頭部に対応する頭部部分マップ1644Hを無効化した上で、顔テクスチャマップ1664と結合する。初期テクスチャマップ1684は、修正身体テクスチャ画像1642Aと顔テクスチャマップ1664とを同じスケールに調整した上で、隣接配置したものに相当する。
なお、SMPL-Xフォーマットに従うテクスチャデータの場合には、所定のスケーリングにより、FLAMEフォーマットにリフォーマットできる。すなわち、SMPL-Xフォーマットに従うテクスチャマップと、FLAMEフォーマットに従うテクスチャマップとの間の対応関係は一対一であるので、テクスチャ画像を伸張する場合の倍率などは、フォーマット間の対応関係に基づいて一意に決定できる。
このように、テクスチャ統合部158は、身体の3D形状(身体3D形状データ160)に対応するテクスチャ画像(身体テクスチャ画像1642)と頭部の3D形状(頭部3D形状データ167)に対応するテクスチャ画像(初期顔テクスチャ画像1686)とを統合するとともに、身体の3D形状に対応するテクスチャマップ(修正身体テクスチャマップ1644A)と頭部の3D形状に対応するテクスチャマップ(顔テクスチャマップ1664)とを統合することで、初期テクスチャデータ168を生成する。
初期テクスチャデータ168(初期テクスチャ画像1682および初期テクスチャマップ1684)は、顔を含む頭部についての部分と、頭部以外の身体の部分とから構成される。顔を含む頭部についてテクスチャをより多く用意しておくことで、1台のカメラを用いた撮像であっても、顔の表情や動き(ジェスチャ)の再現性を高めることができる。
以上のような処理により、初期モデル構築の処理が完了する。
[E.3Dモデル再現段階における処理の詳細]
本実施の形態に従う情報処理システム1の3Dモデル再現段階においては、1つのカメラ140で撮像した人物の2D映像(1フレーム分)から3Dモデルを再現する。3Dモデルを2D映像のフレーム毎に更新することで、人物の動きや表情の変化を動画として再現できる。
[E.3Dモデル再現段階における処理の詳細]
本実施の形態に従う情報処理システム1の3Dモデル再現段階においては、1つのカメラ140で撮像した人物の2D映像(1フレーム分)から3Dモデルを再現する。3Dモデルを2D映像のフレーム毎に更新することで、人物の動きや表情の変化を動画として再現できる。
図8は、本実施の形態に従う情報処理システム1の3Dモデル再現段階を実現するための機能構成例を示す模式図である。図9は、本実施の形態に従う情報処理システム1の3Dモデル再現段階において生成されるデータの一例を示す図である。
図8に示す各機能は、典型的には、情報処理装置100のプロセッサがプログラム(図2に示す3Dモデル再現プログラム124)を実行することで実現される。なお、一部の処理は、情報処理装置200が担当してもよい。
図8を参照して、情報処理装置100は、安定化部170と、顔テクスチャ再構築部156と、テクスチャ画像ブレンディング部172と、顔形状再構築部174と、ポーズ推定部176と、形状統合部178と、3Dモデル生成部180とを含む。
(e1:安定化部170)
安定化部170は、カメラ140が撮像した2D映像に含まれる顔領域を検出し、検出した顔領域を時間的に安定化する。安定化部170は、時間的に安定化された顔領域に対応する部分映像を顔テクスチャ再構築部156および顔形状再構築部174へ出力する。すなわち、カメラ140で撮像された人物の2D映像に設定されたウィンドウに対応する部分映像が顔テクスチャ再構築部156および顔形状再構築部174に入力される。
安定化部170は、カメラ140が撮像した2D映像に含まれる顔領域を検出し、検出した顔領域を時間的に安定化する。安定化部170は、時間的に安定化された顔領域に対応する部分映像を顔テクスチャ再構築部156および顔形状再構築部174へ出力する。すなわち、カメラ140で撮像された人物の2D映像に設定されたウィンドウに対応する部分映像が顔テクスチャ再構築部156および顔形状再構築部174に入力される。
安定化部170は、2D映像146から抽出される顔領域163(ウィンドウ)の位置およびサイズを時間的に平滑化する。図9(A)には、2D映像146から顔領域163A,163Bを抽出する処理の一例を示す。顔領域163A,163Bの範囲は、公知の画像認識処理により決定することができる。
フレーム毎に人物の顔を再現するために、上述したような「DECA」といった公知のアルゴリズムを用いる場合を想定する。「DECA」は、1フレーム毎に顔を再現することが可能であるが、顔領域163の大きさおよび位置をフレーム毎に都度決定すると、フレーム間で見ると、再現される顔に揺らぎや不連続性が生じ得る。
一般的に、2D映像(1フレーム分)から検出される顔のキーポイント(例えば、目)の位置はフレーム毎に変化し得るので、検出されるキーポイントに基づいて決定されるウィンドウの位置およびサイズもフレーム毎に変化し得る。
そこで、安定化部170は、ウィンドウの位置およびサイズを時間的に平滑化することで、再現される顔を安定化する。すなわち、安定化部170は、2D映像における人物の位置を時間的に平滑化してウィンドウを設定する。
より具体的には、安定化部170は、人物の顔全体を覆うことができる一定のサイズをもつウィンドウを採用するとともに、特定のキーポイントを基準にした位置にウィンドウを設定する。例えば、鼻の先端を中心としてウィンドウを設定することができる。
例えば、次のフレームにおいて、人物が先行のフレームにおいて設定されていたウィンドウ内で移動する場合には、安定化部170は、過去nフレームからそれぞれ検出された特定のキーポイントの平均位置を基準として、当該次のフレームにおけるウィンドウの位置を設定する。また、次のフレームにおいて、人物がカメラ140に近付いた、あるいは、遠ざかった場合には、安定化部170は、過去nフレームにおけるウィンドウのサイズの移動平均に基づいて、ウィンドウのサイズを追従して変化させる。
このような処理によって、2D映像146における人物の移動にウィンドウを追従させる際に、フレーム間で不連続性が生じる度合いを低減できる。
なお、人物の動きが早すぎて、ウィンドウの外部に移動してしまった場合には、ウィンドウのサイズおよび位置はリセットされて、再度設定される。この場合には、再現される顔に不連続性が生じ得るので、違和感を低減するための付加的な処理を行ってもよい。
上述したような処理を採用することで、順次抽出される顔領域163(ウィンドウ)の位置およびサイズはフレーム間で大きく変化することはないので、再構築される顔の形状に生じる不連続性を低減できる。
(e2:顔テクスチャ再構築部156)
顔テクスチャ再構築部156は、2D映像146から抽出された顔領域163の映像に基づいて、顔のテクスチャを再構築する。より具体的には、顔テクスチャ再構築部156は、顔テクスチャ画像1666を再構築する。顔テクスチャ再構築部156は、図5に示す顔テクスチャ再構築部156と実質的に同一であるので、詳細な説明は繰り返さない。図9(B)には、再構築された顔テクスチャ画像1666の一例を示す。
顔テクスチャ再構築部156は、2D映像146から抽出された顔領域163の映像に基づいて、顔のテクスチャを再構築する。より具体的には、顔テクスチャ再構築部156は、顔テクスチャ画像1666を再構築する。顔テクスチャ再構築部156は、図5に示す顔テクスチャ再構築部156と実質的に同一であるので、詳細な説明は繰り返さない。図9(B)には、再構築された顔テクスチャ画像1666の一例を示す。
なお、顔テクスチャ再構築部156は、顔テクスチャマップも再構築するが、テクスチャ画像ブレンディング部172において必ずしも必要ではないので、破棄されてもよい。
(e3:テクスチャ画像ブレンディング部172)
テクスチャ画像ブレンディング部172は、初期モデル構築段階において再構築された初期テクスチャ画像1682と、顔テクスチャ再構築部156により再構築された顔テクスチャ画像1666とをブレンディングして、ブレンディッド顔テクスチャ画像1824を再構築する。すなわち、テクスチャ画像ブレンディング部172は、テクスチャデータ(初期テクスチャデータ168)に含まれるテクスチャ画像(初期テクスチャ画像1682)に再構築された顔のテクスチャ画像(初期テクスチャ画像1682)をブレンディングして、カメラ140で撮像された人物のテクスチャ画像(ブレンディッド顔テクスチャ画像1824)を再構築する。
テクスチャ画像ブレンディング部172は、初期モデル構築段階において再構築された初期テクスチャ画像1682と、顔テクスチャ再構築部156により再構築された顔テクスチャ画像1666とをブレンディングして、ブレンディッド顔テクスチャ画像1824を再構築する。すなわち、テクスチャ画像ブレンディング部172は、テクスチャデータ(初期テクスチャデータ168)に含まれるテクスチャ画像(初期テクスチャ画像1682)に再構築された顔のテクスチャ画像(初期テクスチャ画像1682)をブレンディングして、カメラ140で撮像された人物のテクスチャ画像(ブレンディッド顔テクスチャ画像1824)を再構築する。
図9(C)には、再構築されたブレンディッド顔テクスチャ画像1824の一例を示す。
図10は、本実施の形態に従う情報処理システム1におけるブレンディング処理を説明するための模式図である。図10を参照して、テクスチャ画像ブレンディング部172は、初期テクスチャ画像1682(初期顔テクスチャ画像1686および修正身体テクスチャ画像1642A)のうち初期顔テクスチャ画像1686に、マスク1826を用いて顔テクスチャ画像1666をブレンディングすることで、修正顔テクスチャ画像1686Aを生成する。
すなわち、初期テクスチャ画像1682の初期顔テクスチャ画像1686に対するブレンディング処理が行われることで、ブレンディッド顔テクスチャ画像1824が生成される。このとき、テクスチャ画像ブレンディング部172は、初期顔テクスチャ画像1686に、顔テクスチャ画像1666のうちマスク1826を透過した結果を重畳する。このように、テクスチャ画像ブレンディング部172は、カメラ140で撮像された人物のテクスチャ画像(ブレンディッド顔テクスチャ画像1824)のうちマスクを透過した結果を初期テクスチャデータ168に含まれる初期顔テクスチャ画像1686に重畳する。
マスク1826は、例えば、顔テクスチャ再構築部156が再構築した顔テクスチャデータ166の各画素の信頼度を強度(透過度)として割り当てることで生成してもよい。
あるいは、顔テクスチャ画像1666に基づいてマスク1826を生成してもよい。より具体的には、顔テクスチャ画像1666に含まれる画素のうち、画素値が予め定められたしきい値を超える画素に「1」(透過)を割り当て、それ以外の画素に「0」(遮断)を割り当てる。続いて、正方ウィンドウを用いて最小化フィルタを適用し、さらにエッジにぼかしフィルタ(例えば、ガウシアンフィルタやボックスフィルタなど)を適用する。
このようなマスク1826を用いることで、初期顔テクスチャ画像1686に重ね合わされる顔テクスチャ画像1666の周囲を徐々に変化させたブレンディングを実現できる。すなわち、マスク1826は、透過度が連続的に変化するように構成されることになる。
このようなブレンディングによって、今回のフレームの映像を反映した顔の表情をリアルタイムに再現できる一方で、髪型などについては、初期テクスチャ画像1682を用いて安定的に再現することができる。
すなわち、3Dモデル再現段階においては、各フレームの映像から再構築された顔の表情などの情報を用いて3Dモデルにリアルタイムに反映する一方で、当該フレームの映像から再構築されるとは限らない、頭部の顔領域以外の領域のテクスチャについては、初期顔テクスチャ画像1686の情報を3Dモデルに反映する。
(e4:顔形状再構築部174)
顔形状再構築部174は、2D映像146から抽出された顔領域163の映像に基づいて、顔の表情、動き、3D形状の各々を示すパラメータ(顔表情パラメータ184)を再構築する。すなわち、顔形状再構築部174は、カメラ140で撮像された人物の2D映像から顔の3D形状を再構築する顔形状再構築部に相当する。顔形状再構築部174には、上述したような「DECA」といった公知のアルゴリズムを採用してもよい。
顔形状再構築部174は、2D映像146から抽出された顔領域163の映像に基づいて、顔の表情、動き、3D形状の各々を示すパラメータ(顔表情パラメータ184)を再構築する。すなわち、顔形状再構築部174は、カメラ140で撮像された人物の2D映像から顔の3D形状を再構築する顔形状再構築部に相当する。顔形状再構築部174には、上述したような「DECA」といった公知のアルゴリズムを採用してもよい。
図9(D)には、再構築された顔の表情、動き、3D形状の各々を示すパラメータ(顔表情パラメータ184)を視覚的に表現した例を示す。
(e5:ポーズ推定部176)
ポーズ推定部176は、2D映像146からフレーム毎の身体のポーズ(姿勢)を推定する。すなわち、ポーズ推定部176は、カメラ140で撮像された人物の2D映像から当該人物のポーズを推定する。ポーズ推定部176からは、身体ポーズデータ186がフレーム毎に出力される。典型的には、身体ポーズデータ186は、各関節の角度などの情報を含む。なお、ポーズ推定部176には、公知のポーズ推定アルゴリズムを採用できる。
ポーズ推定部176は、2D映像146からフレーム毎の身体のポーズ(姿勢)を推定する。すなわち、ポーズ推定部176は、カメラ140で撮像された人物の2D映像から当該人物のポーズを推定する。ポーズ推定部176からは、身体ポーズデータ186がフレーム毎に出力される。典型的には、身体ポーズデータ186は、各関節の角度などの情報を含む。なお、ポーズ推定部176には、公知のポーズ推定アルゴリズムを採用できる。
図9(E)には、ポーズの推定処理および推定された身体ポーズデータ186を視覚的に表現した例を示す。
(e6:形状統合部178)
形状統合部178は、初期モデル構築段階において再構築された初期3D形状データ162に、身体ポーズデータ186および顔表情パラメータ184を入力することで、撮像された2D映像146に対応する身体の3D形状を再構築する。
形状統合部178は、初期モデル構築段階において再構築された初期3D形状データ162に、身体ポーズデータ186および顔表情パラメータ184を入力することで、撮像された2D映像146に対応する身体の3D形状を再構築する。
より具体的には、形状統合部178は、初期3D形状データ162に基づいて、身体ポーズデータ186により指定されたポーズ、および、顔表情パラメータ184により定義される表情に対応する身体の3D形状を再構築する。これによって、身体の3D形状および顔の3D形状を統合した3D形状を示す統合3D形状データ188が再構築される。
また、形状統合部178は、初期3D形状データ162のみではなく、初期3D形状データ162に頭部3D形状データ167を組み込んだ3D形状データを用いて、統合3D形状データ188を再構築するようにしてもよい。
さらに、形状統合部178は、初期テクスチャマップ1684(修正身体テクスチャマップ1644Aおよび顔テクスチャマップ1664)に基づいて対応関係を決定した上で、身体の3D形状と顔の3D形状とを統合するようにしてもよい。
このように、形状統合部178は、初期3D形状データ162(3D形状データ)に基づいて推定されたポーズに対応する身体の3D形状を再構築するとともに、再構築された身体の3D形状と、顔表情パラメータ184に基づいて再構築される顔の3D形状とを統合して、カメラ140で撮像された人物の3D形状(統合3D形状データ188)を再構築する。さらに、形状統合部178は、初期テクスチャデータ168に含まれるテクスチャマップ(初期テクスチャマップ1684)に基づいて、再構築された身体の3D形状と再構築された顔の3D形状とを統合することで、再現精度を高めることができる。
図9(F)には、再構築された統合3D形状データ188を視覚的に表現した例を示す。
(e7:3Dモデル生成部180)
3Dモデル生成部180は、統合3D形状データ188に基づく3D形状と、ブレンディッド顔テクスチャ画像1824とを統合する。また、3Dモデル生成部180は、指定された視点から見た3Dモデル190を出力する。
3Dモデル生成部180は、統合3D形状データ188に基づく3D形状と、ブレンディッド顔テクスチャ画像1824とを統合する。また、3Dモデル生成部180は、指定された視点から見た3Dモデル190を出力する。
このように、3Dモデル生成部180は、カメラ140で撮像された人物の3D形状(統合3D形状データ188)およびカメラ140で撮像された人物のテクスチャ画像(ブレンディッド顔テクスチャ画像1824)に基づいて、カメラ140で撮像された人物の3Dモデル190を生成する。
なお、統合3D形状データ188とブレンディッド顔テクスチャ画像1824との結合(テクスチャ画像のマッピング)には、初期テクスチャマップ1684が参照されてもよい。すなわち、3Dモデル生成部180は、初期テクスチャデータ168(テクスチャデータ)に含まれる初期テクスチャマップ1684に基づいて、人物の3D形状(統合3D形状データ188)と人物のテクスチャ画像(ブレンディッド顔テクスチャ画像1824)とを統合するようにしてもよい。
図9(F)には、複数の視点から3Dモデル190を見た状態を視覚的に表現した例を示す。なお、3Dモデル生成部180は、図9(F)に示すように複数の視点から見た3Dモデルを同時に表示しなくてもよく、指定された1つの視点から見た3Dモデルを出力する。
[F.変形例]
初期モデル構築の処理(初期モデル構築段階)および3Dモデルを生成する処理(3Dモデル再現段階)を同一の情報処理装置100が実行する構成を例示したが、一部の処理を別の情報処理装置が実行してもよい。
初期モデル構築の処理(初期モデル構築段階)および3Dモデルを生成する処理(3Dモデル再現段階)を同一の情報処理装置100が実行する構成を例示したが、一部の処理を別の情報処理装置が実行してもよい。
また、初期モデル(初期3D形状データ162および初期テクスチャデータ168)については、予め構築しておき、3Dモデルの再現が必要な段階で、適宜利用するようにしてもよい。
図11は、本実施の形態に従う情報処理システム1のシステム構成の別の一例を示す模式図である。図11を参照して、例えば、サーバ装置300は、ユーザ毎に、初期3D形状データ162および初期テクスチャデータ168を予め保持している。
サーバ装置300は、情報処理装置100-3,100-4からの要求に応答して、指定された初期3D形状データ162および初期テクスチャデータ168を提供する。情報処理装置100-3,100-4の各々は、サーバ装置300から提供された初期3D形状データ162および初期テクスチャデータ168を用いて、3Dモデルを生成する処理(3Dモデル再現段階)を実行する。
なお、初期3D形状データ162および初期テクスチャデータ168は、必ずしも、情報処理装置100を利用するユーザを撮像した2D映像に基づいて作成されなくてもよい。上述したように、3Dモデル再現段階においては、人物を撮像して再構築されるテクスチャ画像がブレンディングされるので、別の人物から生成された初期3D形状データ162および初期テクスチャデータ168を用いても、当該人物の3Dモデルを再現できる。
また、図1に示す情報処理装置100-1,100-2と、情報処理装置200とが連係して、初期モデル構築の処理(初期モデル構築段階)および3Dモデルを生成する処理(3Dモデル再現段階)を実行するようにしてもよい。情報処理装置の各々が担当する処理は任意に設計できる。
[G.まとめ]
本実施の形態に従う情報処理システム1は、3Dモデルの再現時には、複数のカメラからそれぞれ撮像した複数の2D映像ではなく、1フレーム分の2D映像から人物の3Dモデルを生成できる。身体および顔についてそれぞれ形状およびテクスチャを再構築することで、顔の表情やジェスチャをより高精度に再現できる。
本実施の形態に従う情報処理システム1は、3Dモデルの再現時には、複数のカメラからそれぞれ撮像した複数の2D映像ではなく、1フレーム分の2D映像から人物の3Dモデルを生成できる。身体および顔についてそれぞれ形状およびテクスチャを再構築することで、顔の表情やジェスチャをより高精度に再現できる。
また、3Dモデルの再現時には、1フレーム分のカメラで撮像した2D映像から3Dモデルを生成できるので、複数のカメラで撮像した複数の2D映像を用いる場合に比較して、処理負荷を低減でき、それによって3Dモデルをリアルタイムに再現できる。
今回開示された実施の形態は、すべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した実施の形態の説明ではなくて請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 情報処理システム、2 ネットワーク、10 人物、20,190 3Dモデル、100,200 情報処理装置、102 CPU、104 GPU、106 主メモリ、108 ディスプレイ、110 ネットワークインターフェイス、112 入力デバイス、114 光学ドライブ、116 光学ディスク、118 カメラインターフェイス、120 ストレージ、122 初期モデル構築プログラム、124 再現プログラム、126,162 3D形状データ、140 カメラ、142 映像取得部、144 複数視点映像、146 2D映像、150 身体3D形状再構築部、152 3D形状修正部、154 身体テクスチャ再構築部、156 顔テクスチャ再構築部、157 頭部3D形状再構築部、158 テクスチャ統合部、160 身体3D形状データ、163,163A,163B 顔領域、164 身体テクスチャデータ、166 顔テクスチャデータ、167 頭部3D形状データ、168 初期テクスチャデータ、170 安定化部、172 テクスチャ画像ブレンディング部、174 顔形状再構築部、176 ポーズ推定部、178 形状統合部、180 3Dモデル生成部、184 顔表情パラメータ、186 身体ポーズデータ、188 統合3D形状データ、300 サーバ装置、1642 身体テクスチャ画像、1642A 修正身体テクスチャ画像、1642H 頭部部分画像、1644 身体テクスチャマップ、1644A 修正身体テクスチャマップ、1644H 頭部部分マップ、1662,1666 顔テクスチャ画像、1664 顔テクスチャマップ、1682 初期テクスチャ画像、1684 初期テクスチャマップ、1686 初期顔テクスチャ画像、1686A 修正顔テクスチャ画像、1824 ブレンディッド顔テクスチャ画像、1826 マスク。
Claims (8)
- カメラと、
予め作成された、身体の3D形状を示す3D形状データと、当該身体のテクスチャを示すテクスチャデータとを格納する記憶部と、
前記カメラで撮像された人物の2D映像から顔のテクスチャを再構築する顔テクスチャ再構築部と、
前記カメラで撮像された人物の2D映像から顔の3D形状を再構築する顔形状再構築部と、
前記カメラで撮像された人物の2D映像から当該人物のポーズを推定するポーズ推定部と、
前記3D形状データに基づいて前記推定されたポーズに対応する身体の3D形状を再構築するとともに、前記再構築された身体の3D形状と前記再構築された顔の3D形状とを統合して、前記カメラで撮像された人物の3D形状を再構築する形状統合部と、
前記テクスチャデータに含まれるテクスチャ画像に前記再構築された顔のテクスチャ画像をブレンディングして、前記カメラで撮像された人物のテクスチャ画像を再構築するテクスチャ再構築部と、
前記カメラで撮像された人物の3D形状および前記カメラで撮像された人物のテクスチャ画像に基づいて、前記カメラで撮像された人物の3Dモデルを生成するモデル生成部とを備える、情報処理システム。 - 前記テクスチャデータは、
前記再構築された身体の3D形状に対応するテクスチャ画像、および、前記再構築された顔の3D形状に対応するテクスチャ画像と、
前記再構築された身体の3D形状に対応するテクスチャマップ、および、前記再構築された顔の3D形状に対応するテクスチャマップとを含み、
前記カメラで撮像された人物の複数の2D映像から身体の3D形状を再構築する身体形状再構築部と、
前記カメラで撮像された人物の複数の2D映像から身体のテクスチャを再構築する身体テクスチャ再構築部と、
前記カメラで撮像された人物の複数の2D映像から頭部の3D形状を再構築する頭部形状再構築部と、
前記再構築された身体の3D形状と前記再構築された頭部の3D形状との対応関係を決定し、当該決定された3D形状の対応関係に基づいて、身体の3D形状に対応するテクスチャマップと頭部の3D形状に対応するテクスチャマップとの対応関係を決定し、当該決定されたテクスチャマップの対応関係に基づいて、身体の3D形状に対応するテクスチャ画像から頭部の3D形状に対応するテクスチャ画像を生成するテクスチャ統合部とをさらに備える、請求項1に記載の情報処理システム。 - 前記形状統合部は、前記テクスチャデータに含まれるテクスチャマップに基づいて、前記再構築された身体の3D形状と前記再構築された顔の3D形状とを統合する、請求項2に記載の情報処理システム。
- 前記モデル生成部は、前記テクスチャデータに含まれるテクスチャマップに基づいて、前記人物の3D形状と前記人物のテクスチャ画像とを統合する、請求項2または3に記載の情報処理システム。
- 前記テクスチャ再構築部は、前記カメラで撮像された人物のテクスチャ画像のうちマスクを透過した結果を前記テクスチャデータに含まれるテクスチャ画像に重畳する、請求項1~4のいずれか1項に記載の情報処理システム。
- 前記カメラで撮像された人物の2D映像に設定されたウィンドウに対応する部分映像が前記顔テクスチャ再構築部および前記顔形状再構築部に入力され、
前記2D映像における人物の位置を時間的に平滑化して前記ウィンドウを設定する安定化部をさらに備える、請求項1~5のいずれか1項に記載の情報処理システム。 - カメラで撮像された人物の2D映像から顔のテクスチャを再構築するステップと、
前記カメラで撮像された人物の2D映像から顔の3D形状を再構築するステップと、
前記カメラで撮像された人物の2D映像から当該人物のポーズを推定するステップと、
予め作成された身体の3D形状を示す3D形状データに基づいて前記推定されたポーズに対応する身体の3D形状を再構築するステップと、
前記再構築された身体の3D形状と前記再構築された顔の3D形状とを統合して、前記カメラで撮像された人物の3D形状を再構築するステップと、
予め作成された身体のテクスチャを示すテクスチャデータに含まれるテクスチャ画像に前記再構築された顔のテクスチャ画像をブレンディングして、前記カメラで撮像された人物のテクスチャ画像を再構築するステップと、
前記カメラで撮像された人物の3D形状および前記カメラで撮像された人物のテクスチャ画像に基づいて、前記カメラで撮像された人物の3Dモデルを生成するステップとを備える、情報処理方法。 - コンピュータに請求項7に記載の方法を実行させるための情報処理プログラム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022-001280 | 2022-01-06 | ||
JP2022001280A JP2023100532A (ja) | 2022-01-06 | 2022-01-06 | 情報処理システム、情報処理方法および情報処理プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023132261A1 true WO2023132261A1 (ja) | 2023-07-13 |
Family
ID=87073578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2022/047439 WO2023132261A1 (ja) | 2022-01-06 | 2022-12-22 | 情報処理システム、情報処理方法および情報処理プログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2023100532A (ja) |
WO (1) | WO2023132261A1 (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002269580A (ja) * | 2001-03-07 | 2002-09-20 | Japan Science & Technology Corp | 動画像生成システム |
WO2021261188A1 (ja) * | 2020-06-23 | 2021-12-30 | パナソニックIpマネジメント株式会社 | アバター生成方法、プログラム、アバター生成システム、及びアバター表示方法 |
-
2022
- 2022-01-06 JP JP2022001280A patent/JP2023100532A/ja active Pending
- 2022-12-22 WO PCT/JP2022/047439 patent/WO2023132261A1/ja unknown
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002269580A (ja) * | 2001-03-07 | 2002-09-20 | Japan Science & Technology Corp | 動画像生成システム |
WO2021261188A1 (ja) * | 2020-06-23 | 2021-12-30 | パナソニックIpマネジメント株式会社 | アバター生成方法、プログラム、アバター生成システム、及びアバター表示方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2023100532A (ja) | 2023-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7495546B2 (ja) | 畳み込み画像変換を使用して同時位置特定およびマッピングを実施する方法およびシステム | |
Zielonka et al. | Towards metrical reconstruction of human faces | |
Li et al. | Monocular real-time volumetric performance capture | |
JP7453470B2 (ja) | 3次元再構成及び関連インタラクション、測定方法及び関連装置、機器 | |
Wu et al. | Real-time shading-based refinement for consumer depth cameras | |
Jeni et al. | Dense 3D face alignment from 2D video for real-time use | |
Ichim et al. | Dynamic 3D avatar creation from hand-held video input | |
CN111243093B (zh) | 三维人脸网格的生成方法、装置、设备及存储介质 | |
Wang et al. | High resolution acquisition, learning and transfer of dynamic 3‐D facial expressions | |
Bronstein et al. | Calculus of nonrigid surfaces for geometry and texture manipulation | |
US9317970B2 (en) | Coupled reconstruction of hair and skin | |
Tretschk et al. | Demea: Deep mesh autoencoders for non-rigidly deforming objects | |
US11928778B2 (en) | Method for human body model reconstruction and reconstruction system | |
WO2019035155A1 (ja) | 画像処理システム、画像処理方法、及びプログラム | |
Fyffe et al. | Multi‐view stereo on consistent face topology | |
US11961266B2 (en) | Multiview neural human prediction using implicit differentiable renderer for facial expression, body pose shape and clothes performance capture | |
US8633926B2 (en) | Mesoscopic geometry modulation | |
CN110660076A (zh) | 一种人脸交换方法 | |
Li et al. | Animated 3D human avatars from a single image with GAN-based texture inference | |
Li et al. | 3d human avatar digitization from a single image | |
WO2022208440A1 (en) | Multiview neural human prediction using implicit differentiable renderer for facial expression, body pose shape and clothes performance capture | |
CN117011493B (zh) | 基于符号距离函数表示的三维人脸重建方法、装置及设备 | |
WO2023132261A1 (ja) | 情報処理システム、情報処理方法および情報処理プログラム | |
Jian et al. | Realistic face animation generation from videos | |
US20230177722A1 (en) | Apparatus and method with object posture estimating |
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: 22918845 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |