UnrealPose: Leveraging Game Engine Kinematics for Large-Scale Synthetic Human Pose Data
Joshua Kawaguchi, Saad Manzur, Emily Gao Wang, Maitreyi Sinha, Bryan Vela, Yunxi Wang, Brandon Vela, Wayne B. Hayes
TL;DR
UnrealPose tackles the lack of large-scale, accurately labeled 3D human pose data by introducing UnrealPose-Gen, a UE5-based pipeline that renders engine-native skeletal joints with full camera calibration and COCO-style annotations. The system enables offline rendering via Movie Render Queue and online rendering within gameplay, and it outputs per-frame 3D joints (world and camera coordinates), 2D keypoints with visibility, bounding boxes, and segmentation masks. UnrealPose-1M comprises approximately one million annotated frames across coherent and randomized sequences, designed to maximize viewpoint diversity and interaction-rich motions. Across four tasks—2D keypoint detection, 2D→3D lifting, image→3D pose regression, and instance segmentation—the synthetic data show strong geometric fidelity and cross-domain consistency, supporting domain adaptation and synthetic-to-real transfer, with the dataset and generator publicly released for broader use.
Abstract
Diverse, accurately labeled 3D human pose data is expensive and studio-bound, while in-the-wild datasets lack known ground truth. We introduce UnrealPose-Gen, an Unreal Engine 5 pipeline built on Movie Render Queue for high-quality offline rendering. Our generated frames include: (i) 3D joints in world and camera coordinates, (ii) 2D projections and COCO-style keypoints with occlusion and joint-visibility flags, (iii) person bounding boxes, and (iv) camera intrinsics and extrinsics. We use UnrealPose-Gen to present UnrealPose-1M, an approximately one million frame corpus comprising eight sequences: five scripted "coherent" sequences spanning five scenes, approximately 40 actions, and five subjects; and three randomized sequences across three scenes, approximately 100 actions, and five subjects, all captured from diverse camera trajectories for broad viewpoint coverage. As a fidelity check, we report real-to-synthetic results on four tasks: image-to-3D pose, 2D keypoint detection, 2D-to-3D lifting, and person detection/segmentation. Though time and resources constrain us from an unlimited dataset, we release the UnrealPose-1M dataset, as well as the UnrealPose-Gen pipeline to support third-party generation of human pose data.
