A Unified Framework for Image-to-3D Part Generation via Variable Granularity
Organizations: Tongji University · Chongqing Afari Intelligent Drive Co., Ltd · Huazhong University of Science and Technology
Abstract
Controllable 3D part generation is pivotal for digital asset creation, yet existing methods lack the flexibility to accommodate diverse user workflows requiring varying levels of control. In this paper, we introduce FlexPart, a unified image-to-3D part generation framework that supports variable-granularity geometric conditions within a single model. By seamlessly integrating heterogeneous inputs, ranging from sparse points to dense bounding boxes and masks, via gated adaptive modulation, FlexPart unlocks a powerful cross-modal synergy. We also propose an asymmetric geometric guidance mechanism that leverages strong spatial priors to align representations across granularities, improving geometric consistency and facilitating inter-task synergy. Under mask conditioning on PartVerseXL, FlexPart reduces Part CD by 16.6% relative to TripoSG + SAM3D and by 10.5% relative to OmniPart, while maintaining competitive whole-mesh quality. The code can be found at https://github.com/Gucci233/FlexPart
Figures & tables
| Method | Reference | Cond. | PartVerseXL | PartObjaverse-Tiny | ||||
| Part CD | Part IoU V | Part IoU B | Part CD | Part IoU V | Part IoU B | |||
| TRELLIS + SAM3D | CVPR 25 | MV Mask | 0.3471 | 0.1885 | 0.2173 | 0.3916 | 0.1226 | 0.2031 |
| TripoSG + SAM3D | TPAMI 25 | MV Mask | 0.3523 | 0.1727 | 0.1896 | 0.4235 | 0.1250 | 0.2078 |
| PartCrafter | NeurIPS 25 | Number | 0.5235 | 0.0907 | 0.1257 | 0.5193 | 0.0802 | 0.1455 |
| PartPacker | NeurIPS 25 | - | 0.3933 | 0.1717 | 0.2210 | 0.3932 | 0.1588 | 0.2327 |
| OmniPart | SIGGRAPH Asia 25 | Mask | 0.3283 | 0.1961 | 0.2831 | 0.3681 | 0.1568 | 0.2649 |
| Method | Reference | PartVerseXL | PartObjaverse-Tiny | ||||
| Mean CD | F-Score | ULIP | Mean CD | F-Score | ULIP | ||
| TRELLIS | CVPR 25 | 0.2125 | 0.7514 | 0.2370 | 0.2038 | 0.7478 | 0.2434 |
| TripoSG | TPAMI 25 | 0.1227 | 0.8176 | 0.2331 | 0.1504 | 0.7811 | 0.2410 |
| PartCrafter | NeurIPS 25 | 0.1666 | 0.7346 | 0.1950 | 0.1731 | 0.7280 | 0.2136 |
| PartPacker | NeurIPS 25 | 0.1489 | 0.7899 | 0.2266 | 0.1612 | 0.7682 | 0.2397 |
| OmniPart | SIGGRAPH Asia 25 | 0.1547 | 0.7636 | 0.2179 | 0.1585 | 0.7501 | 0.2335 |
| Eval Cond. | Train Setting | Whole Mesh | Part-level | ||||
| CD | F-Score | ULIP | CD | IoU V | IoU B | ||
| Point | Point only | 0.1623 | 0.7368 | 0.2014 | 0.3550 | 0.1763 | 0.2320 |
| Point + Mask | 0.1587 | 0.7505 | 0.2112 | 0.3421 | 0.1816 | 0.2396 | |
| Point + Box + Mask | 0.1525 | 0.7689 | 0.2171 | 0.3334 | 0.1902 | 0.2506 | |
| Box | Box only | 0.1489 | 0.7756 | 0.2171 | 0.3155 | 0.2011 | 0.2756 |
| Point + Box | 0.1458 | 0.7812 | 0.2201 | 0.3102 | 0.2023 | 0.2763 | |
| Cond. | Guid. | Part-level | ||
| CD | IoU V | IoU B | ||
| Points | - | 0.3406 | 0.1811 | 0.2323 |
| ✓ | 0.3334 | 0.1902 | 0.2506 | |
| Masks | - | 0.3011 | 0.2078 | 0.2813 |
| ✓ | 0.2938 | 0.2049 | 0.2840 | |
| Method | Cond. | Whole Mesh | Part-level | ||||
| CD | F-Score | ULIP | CD | IoU V | IoU B | ||
| FullPart | 3D Box | 0.1625 | 0.7577 | 0.1775 | 0.2488 | 0.2064 | 0.4370 |
| Ours | 3D Box | 0.1385 | 0.8158 | 0.2209 | 0.2356 | 0.2653 | 0.4027 |
Appendix figures & tables14 assets
Supplementary material from the paper’s appendix.
Appendix
| Conditioning route | Part CD | IoU V | IoU B |
| Gated AdaLN (ours) | 0.2938 | 0.2049 | 0.2840 |
| Prompt tokens in cross-attention | 0.6147 | 0.0818 | 0.1089 |
| PartCrafter (reference) | 0.5235 | 0.0907 | 0.1257 |
| Condition | Setting | CD | F-Score | ULIP |
| Point | w/ Grad | 0.1518 | 0.7702 | 0.2166 |
| wo/ Grad | 0.1525 | 0.7689 | 0.2171 | |
| Box | w/ Grad | 0.1531 | 0.7762 | 0.2198 |
| wo/ Grad | 0.1447 | 0.7828 | 0.2219 | |
| Mask | w/ Grad | 0.1512 | 0.7761 | 0.2212 |
| wo/ Grad | 0.1418 | 0.7877 | 0.2206 |
| Condition | Alignment loss | Part CD | IoU V | IoU B |
| Mask | Partial OT (ours) | 0.2938 | 0.2049 | 0.2840 |
| InfoNCE | 0.3053 | 0.1924 | 0.2673 | |
| Box | Partial OT (ours) | 0.3042 | 0.2078 | 0.2810 |
| InfoNCE | 0.3074 | 0.1874 | 0.2653 | |
| Point | Partial OT (ours) | 0.3334 | 0.1902 | 0.2506 |
| InfoNCE | 0.3499 | 0.1807 | 0.2346 |
| Assignment operator | Top-1 matching | Many-to-one collapse |
| Row-wise similarity matching | 0.803 | 0.133 |
| Sinkhorn global assignment | 0.895 | 0.024 |
| Transport formulation | Top-1 matching |
| Strict OT | 0.677 |
| Partial OT with dustbin | 0.747 |
| Method | Part-level | ||
| CD | IoU V | IoU B | |
| 2D Box w/ Perturbation | 0.3171 | 0.2032 | 0.2759 |
| Half Box + Point | 0.3287 | 0.1998 | 0.2609 |
| Half Mask + Half Box | 0.3190 | 0.2053 | 0.2706 |
| Part Count Only | 0.4786 | 0.1255 | 0.1608 |
| Ours (2D Box) | 0.3042 | 0.2078 | 0.2810 |
| Prompt source | Part CD | IoU V | IoU B |
| Human points + 2D boxes |
| Input Type | Point Strategy | CD | IoU V | IoU B |
| Point Only | Center | 0.3302 | 0.1905 | 0.2513 |
| Edge | 0.4190 | 0.1342 | 0.1697 | |
| Offset | 0.3476 | 0.1898 | 0.2455 | |
| Cluster | 0.3803 | 0.1632 | 0.1905 | |
| Point + Box | Center | 0.3118 | 0.2074 | 0.2728 |
| Edge | 0.3178 | 0.1996 | 0.2703 |
| Setting | Condition | CD | IoU V | IoU B |
| SAM (Random) | Mask | 0.3498 | 0.1796 | 0.2375 |
| SAM (Center) | Mask | 0.3387 | 0.1731 | 0.2244 |
| Direct point (ours) | Point | 0.3334 | 0.1902 | 0.2506 |
| Ground Truth (Random) | Mask | 0.2938 | 0.2049 | 0.2840 |
Part-Level 3D Generation
Part-level 3D generation creates and edits 3D objects as structured components with controllable geometry, relationships, materials, and motion.
See all 32 papers