Infinite Mobility: Scalable High-Fidelity Synthesis of Articulated Objects via Procedural Generation (2503.13424v1)
Abstract: Large-scale articulated objects with high quality are desperately needed for multiple tasks related to embodied AI. Most existing methods for creating articulated objects are either data-driven or simulation based, which are limited by the scale and quality of the training data or the fidelity and heavy labour of the simulation. In this paper, we propose Infinite Mobility, a novel method for synthesizing high-fidelity articulated objects through procedural generation. User study and quantitative evaluation demonstrate that our method can produce results that excel current state-of-the-art methods and are comparable to human-annotated datasets in both physics property and mesh quality. Furthermore, we show that our synthetic data can be used as training data for generative models, enabling next-step scaling up. Code is available at https://github.com/Intern-Nexus/Infinite-Mobility
Summary
- The paper presents a procedural generation pipeline that creates high-fidelity articulated objects using tree structures and random parameter sampling.
- It employs procedural mesh generation, curated mesh retrieval, and material customization to ensure physical plausibility and visual quality.
- Evaluations demonstrate superior joint fidelity, greater diversity in articulation trees, and faster generation speeds compared to existing methods.
Infinite Mobility (2503.13424) proposes a novel procedural generation pipeline for synthesizing large-scale, high-fidelity articulated objects. The paper addresses the critical need for diverse and high-quality datasets of articulated objects in embodied AI tasks, where existing data-driven or simulation-based methods are often limited in scale, quality, or fidelity due to data scarcity and labor-intensive annotation or simulation processes.
The core idea is to represent articulated objects as tree structures, similar to the Unified Robot Description Format (URDF), where links are nodes and joints are edges. The pipeline then generates these objects by constructing the articulation tree first and subsequently populating it with geometry and materials. The entire process is governed by purposefully designed programs utilizing randomly sampled parameters, organized into category-specific generators.
The pipeline consists of four main stages:
- Articulation Tree Structure Generation: This stage builds the hierarchical structure of the articulated object. Starting from a root node, the tree is grown iteratively by attaching new nodes (links) to existing ones. For each node with a specific semantic meaning (e.g., "cabinet body"), predefined growth rules determine whether to attach child nodes (e.g., "door", "drawer") and which specific components are plausible. This strategy ensures that essential parts are included for a complete object while optional parts add diversity. The structure is represented as an adjacency list.
- Geometry Generation: The geometry for each link (part) is generated using two methods:
- Procedural Mesh Generation: Building meshes using Blender's Python API, augmented with custom mesh creation programs based on Infinigen (Chen et al., 2023, Bulancea et al., 5 Jun 2024).
- Mesh Retrieval with Procedural Refinement: Selecting suitable meshes from a curated dataset of object parts. This dataset is constructed by inspecting and fixing parts from sources like PartNet-Mobility (Ma et al., 2020) to ensure quality and consistent normals, addressing issues like back faces. For both methods, the bounding box of each part is initially determined based on its semantics and the geometry of connected parts. However, simply placing meshes within bounding boxes can lead to visual and physical issues (e.g., floating parts). To mitigate this, the method defines critical supporting points for each part label and aligns the retrieved/generated meshes with these points, ensuring physically plausible assembly.
- Material Generation: Materials are generated based on Blender's shader node system, leveraging and augmenting methods from Infinigen. Collected crafted materials are also used. Random noise is applied to material properties like diffuse, specular, roughness, and normal maps to enhance diversity. Materials and textures are exported in formats compatible with simulation tools.
- Joint Generation: Once the articulation tree and geometry are finalized, the type of joint for each edge (connection between parent and child nodes) is determined based on the semantics of the connected parts. The physical properties of each joint, such as its axis, position, and motion range, are calculated from the joint type and the overall geometry. The pipeline supports both simple joints (revolute, prismatic, continuous, fixed) and complex compound joints by connecting multiple simple joints via dummy links, which are common in everyday objects but often missing in other datasets/generation methods.
A crucial aspect of the pipeline is ensuring physical plausibility for use in simulations. The authors identify and address common issues in existing datasets and generation methods:
- Ill-designed parts: Some meshes, particularly bases, are not designed to accommodate articulated parts moving downwards without colliding with the ground. The modification involves either adding a base to elevate the object or shrinking the articulated parts and limiting their motion range.
- Insufficient gaps: Meshes modeled without gaps between parts can cause unstable movement in simulation due to collision approximation strategies. The modification involves adding small gaps (2% of the original scale) between parts connected by joints.
The paper demonstrates the superiority of Infinite Mobility through comprehensive evaluations:
- Quality Comparison: Generated objects were compared against the PartNet-Mobility dataset and samples from state-of-the-art generative models like NAP (Beck et al., 2023) and CAGE (Yu et al., 4 Mar 2024). Human evaluators assessed joint fidelity based on movement videos, while GPT-4V (Bulancea et al., 5 Jun 2024) was used as a large-scale evaluator for mesh quality (geometry and texture) based on rendered normal maps and RGB images. Results showed that Infinite Mobility objects were often rated as better or comparable to human-annotated datasets and outperformed generative models across different quality metrics.
- Complexity and Diversity: Quantitative metrics (average joint number, variance of joint number, Tree-Edit-Distance) showed that Infinite Mobility generates objects with significantly higher average joint numbers and greater diversity in articulation tree structures compared to PartNet-Mobility.
- Generation Speed: Infinite Mobility demonstrated significantly faster generation times per object compared to NAP and CAGE.
The generated data is shown to be useful for downstream tasks. The authors used their synthetic data to train the CAGE generative model, enabling further scaling of object generation. Furthermore, the generated articulated objects can be directly imported into popular simulation environments like Sapien (Ma et al., 2020), Isaac Sim, and Genesis, where they are used for tasks such as annotating waypoints and training robotic manipulation agents.
While effective, the paper notes limitations. The current approach relies on human-crafted rules for generating specific object categories, requiring significant effort to extend to new types of objects. Automating this process, perhaps using LLMs with spatial reasoning, is suggested as future work. Additionally, physical properties beyond kinematics, such as friction, damping, and motor strength, are not yet included but could potentially be inferred.
In conclusion, Infinite Mobility presents a practical and effective procedural generation pipeline that can produce large-scale, high-fidelity articulated objects with diverse structures and accurate physical properties, outperforming existing generative methods and rivaling manually curated datasets. This work significantly contributes to addressing the data scarcity problem for embodied AI research and simulation. The code is available at \url{https://github.com/Intern-Nexus/Infinite-Mobility}.
Follow-up Questions
We haven't generated follow-up questions for this paper yet.
Related Papers
GitHub
- GitHub - Intern-Nexus/Infinite-Mobility (2 stars)