Think, Act, Build: An Agentic Framework with Vision Language Models for Zero-Shot 3D Visual Grounding
Organizations: University of California, Davis · Virginia Tech
Abstract
3D Visual Grounding (3D-VG) aims to localize objects in 3D scenes via natural language descriptions. While recent advancements leveraging Vision-Language Models (VLMs) have explored zero-shot possibilities, they typically suffer from a static workflow relying on preprocessed 3D point clouds, essentially degrading grounding into proposal matching. To bypass this reliance, our core motivation is to decouple the task: leveraging 2D VLMs to resolve complex spatial semantics, while relying on deterministic multi-view geometry to instantiate the 3D structure. Driven by this insight, we propose "Think, Act, Build (TAB)", a dynamic agentic framework that reformulates 3D-VG tasks as a generative 2D-to-3D reconstruction paradigm operating directly on raw RGB-D streams. Specifically, guided by a specialized 3D-VG skill, our VLM agent dynamically invokes visual tools to track and reconstruct the target across 2D frames. Crucially, to overcome the multi-view coverage deficit caused by strict VLM semantic tracking, we introduce the Semantic-Anchored Geometric Expansion, a mechanism that first anchors the target in a reference video clip and then leverages multi-view geometry to propagate its spatial location across unobserved frames. This enables the agent to "Build" the target's 3D representation by aggregating these multi-view features via camera parameters, directly mapping 2D visual cues to 3D coordinates. Furthermore, to ensure rigorous assessment, we identify flaws such as reference ambiguity and category errors in existing benchmarks and manually refine the incorrect queries. Extensive experiments on ScanRefer and Nr3D demonstrate that our framework, relying entirely on open-source models, significantly outperforms previous zero-shot methods and even surpasses fully supervised baselines.
Figures & tables
| Method | LLM/VLM | w/o | Unique | Multiple | Overall | |||
| PC. | [email protected] | [email protected] | [email protected] | [email protected] | [email protected] | [email protected] | ||
| Fully-Supervised Methods (One/Two-Stage Based) | ||||||||
| ScanRefer ( Chen et al., 2020 ) | - | ✗ | 67.6 | 46.2 | 32.1 | 21.3 | 39.0 | 26.1 |
| 3DVG-T ( Zhao et al., 2021 ) | - | ✗ | 77.2 | 58.5 | 38.4 | 28.7 | 45.9 | 34.5 |
| BUTD-DETR ( Jain et al., 2022 ) | - | ✗ | 84.2 | 66.3 | 46.6 | 35.1 | 52.2 | 39.8 |
| EDA ( Wu et al., 2023 ) | - | ✗ | 85.8 | 68.6 | 49.1 | 37.6 | 54.6 | 42.3 |
| Method | LLM/VLM | w/o PC. | Easy | Hard | Dep. | Indep. | Overall |
| Fully-Supervised Methods | |||||||
| ReferIt3DNet ( Achlioptas et al., 2020 ) | - | ✗ | 43.6 | 27.9 | 32.5 | 37.1 | 35.6 |
| InstanceRefer ( Yuan et al., 2021 ) | - | ✗ | 46.0 | 31.8 | 34.5 | 41.9 | 38.8 |
| 3DVG-T ( Zhao et al., 2021 ) | - | ✗ | 48.5 | 34.8 | 34.8 | 43.7 | 40.8 |
| EDA ( Wu et al., 2023 ) | - | ✗ | 58.2 | 46.1 | 50.2 | 53.1 | 52.1 |
| BUTD-DETR ( Jain et al., 2022 ) | - | ✗ | 54.6 | 60.7 | 48.4 | 46.0 | 58.0 |
| # | Modules | ScanRefer | Nr3D | ||||||||||
| STE | MGE | Unique | Multiple | Overall | Easy | Hard | Dep. | Indep. | Overall | ||||
| @0.25 | @0.5 | @0.25 | @0.5 | @0.25 | @0.5 | ||||||||
| (a) | ✗ | ✗ | 57.6 | 29.3 | 32.3 | 19.0 | 41.6 | 22.8 | 58.8 | 43.8 | 51.0 | 52.6 | 52.0 |
| (b) | ✗ | ✓ | 65.2 | 41.3 | 41.1 | 22.2 | 50.0 | 29.2 | 62.0 | 47.1 | 48.9 | 59.1 | 55.1 |
| (c) | ✓ | ✗ | 69.6 | 45.7 | 51.3 | 30.4 | 58.0 | 36.0 | 67.6 | 49.1 | 61.5 | 57.8 | 59.2 |
| (d) | ✓ | ✓ | 90.2 | 57.6 | 60.1 | 39.9 | 71.2 | 46.4 | 72.1 | 63.2 | 62.5 | 71.4 | 68.0 |
Appendix figures & tables1 asset
Supplementary material from the paper’s appendix.
Appendix
| Tool Name | Description |
| query_parse() | Parses the natural language query into a structured JSON format containing target_class , attributes , conditions , and scene_feature . |
| read_image_files() | Scans the local directory for a specific scene and indexes all image file paths into a structured list. |
| object_filter() | Filters candidate images using GroundingDINO to retain only frames containing the requested target_class . |
| vlm_filter() | Utilizes a Vision-Language Model to verify if an image strictly satisfies the global scene constraints. |
| vlm_score() | Scores and ranks candidate images based on how well their visual contents match the query’s attributes and spatial conditions. |
| argmax_image_and_seg_id() | Select the best candidate image and identify the specific target object ID within it. It iterates through the images (from highest score), generates segmentation masks using the SAM, and uses the VLM to pinpoint the specific object ID matching the query. |
3D Visual Grounding
Three-dimensional visual grounding links language or visual queries to specific objects, parts, regions, and spatial relations in 3D scenes.
See all 134 papers