Hail Song, Boram Yoon, Woojin Cho, Woontack Woo
Code / Youtube / Paper / Appendix
This repository contains the official implementation of the paper "RC-SMPL : Real-time Cumulative SMPL-based Avatar Body Generation (IEEE ISMAR 2023)". For more implementation detail, please refer our paper.
Abstract : We present a novel method for avatar body generation that cumulatively updates the texture and normal map in real-time. Multiple images or videos have been broadly adopted to create detailed 3D human models that capture more realistic user identities in both Augmented Reality (AR) and Virtual Reality (VR) environments. However, this approach has a higher spatiotemporal cost because it requires a complex camera setup and extensive computational resources. For lightweight reconstruction of personalized avatar bodies, we design a system that progressively captures the texture and normal values using a single RGBD camera to generate the widelyaccepted 3D parametric body model, SMPL-X. Quantitatively, our system maintains real-time performance while delivering reconstruction quality comparable to the state-of-the-art method. Moreover, user studies reveal the benefits of real-time avatar creation and its applicability in various collaborative scenarios. By enabling the production of high-fidelity avatars at a lower cost, our method provides more general way to create personalized avatar in AR/VR applications, thereby fostering more expressive self-representation in the metaverse.
@inproceedings{song2023rc,
title={RC-SMPL: Real-time Cumulative SMPL-based Avatar Body Generation},
author={Song, Hail and Yoon, Boram and Cho, Woojin and Woo, Woontack},
booktitle={2023 IEEE International Symposium on Mixed and Augmented Reality (ISMAR)},
pages={89--98},
year={2023},
organization={IEEE}
}
This research was supported by National Research Council of Science and Technology(NST) funded by the Ministry of Science and ICT(MSIT), Republic of Korea(Grant No. CRC 21011) and Institute of Information & communications Technology Planning & Evaluation (IITP) grant funded by the Korea government(MSIT) (No.2019-0-01270, WISE AR UI/UX Platform Development for Smartglasses)
Install Azure Kinect Body Tracking SDK using this guide to execute our program.
Install Unity (and Unity Hub)
- Unity 2021.3.latest (tested with 2021.3.latest / 2012.3.latest / 2019.3.latest)
During installation, you might install these dependencies.
- CUDA (matched with the machine's GPU version. The code is tested with version 11.7) Reference (Korean)
- cuDNN (matched with CUDA version, The code is tested with version 8.6.0)
- (Optional) Azure kinect viewer for check hardware condition
git clone https://github.com/hailsong/RC-SMPL.git
If you face some version conflict, just click the button "Continue" and "Ignore".
Once you open the project using Unity, fetching dependencies is needed. This command will update the dependencies by refering RC-SMPL/packages.config.
Update-Package -reinstall
You can refer this link to check details. They explain quite well about installization of Kinect DK body tracking implementation on Unity. : Set Up Azure Kinect for Body Tracking in Unity - w/K4A Error Fix
The official documentation is at here : Sample Unity Body Tracking Application
RC-SMPL/MoveLibraryFiles.bat
SMPL-X Project Page You can download SMPL-X implement with Unity at this project page. After extracting the .zip file, move the folder Assets/SMPLX to RC-SMPL/Assets. RC-SMPL/Assets/SMPLX
Important Modify the import setting of Prefabs in RC-SMPL/Assets/SMPLX/Models. Change the Animation type to Unity Humanoid Avatar. (for smplx-female.fbx, smplx-male.fbx)
Important Check Read/Write Enabled box of prefabs import setting model tab. (for smplx-female.fbx, smplx-male.fbx)
-
./Assets/Scenes/main.scene
Main scene that update texture and normal data from RGBD video input. You can also test with different setting at main(gameobjects)-Inspector-main(Script) (ex. Chroma key color, Asynchronous period, some thresholds...)
-
./Assets/Scenes/Kinect4AzureSampleScene.scene
Pose detection sample from kinect body tracking sdk
-
./Assets/Scenes/SMPL_Kinect.scene
- Azure-Kinect-Sensor-SDK
- CUDA compatibility
- cuDNN documentation
- How to Use SMPL Model in Unity (Official mpg documentation)
- SMPL Project Page
- SMPL-X Project Page
- Microsoft Azure Kinect Samples github
- Set Up Azure Kinect for Body Tracking in Unity - w/K4A Error Fix