1<!DOCTYPE html> 2<html> 3 4<head> 5 <!-- Google tag (gtag.js) -->
vendor: 68 bytes, lines 5-6
5 6 <script async src="https://www.googletagmanager.com/gtag/js?id=
6G-XB3PR2Y1TQ
vendor: 16 bytes, lines 6-7
6"></script> 7
7<script> 8
vendor: 140 bytes, lines 8-12
8window.dataLayer = window.dataLayer || []; 9 function gtag(){dataLayer.push(arguments);} 10 gtag('js', new Date()); 11 12 gtag('config', '
12G-XB3PR2Y1TQ
vendor: 8 bytes, lines 12-13
12'); 13
13</script>
13 14 15 <meta charset="utf-8"> 16 <meta name="viewport" content="width=device-width, initial-scale=1.0, shrink-to-fit=no"> 17 <title>DirectLayout</title> 18 19 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.5.0/css/bootstrap.min.css"> 20 <link href='https://fonts.googleapis.com/css?family=Source+Sans+Pro:300,400,500,600' rel='stylesheet' type='text/css'> 21 <link rel="stylesheet" href="assets/css/Highlight-Clean.css"> 22 <link rel="stylesheet" href="assets/css/styles.css"> 23 <link rel="icon" href="./static/icon.png"> 24 25 26 <meta property="og:site_name" content="DirectLayout" /> 27 <meta property="og:type" content="video.other" /> 28 <meta property="og:title" content="Direct Numerical Layout Generation for 3D Indoor Scene Synthesis via Spatial Reasoning" /> 29 <meta property="og:description" content="Direct Numerical Layout Generation for 3D Indoor Scene Synthesis via Spatial Reasoning, 2025." /> 30 <meta property="og:url" content="" /> 31 32
32<script src="assets/js/video_comparison.js"></script>
32 33
33<script type="module" src="https://unpkg.com/@google/[email protected]/dist/model-viewer.min.js"></script>
33 34</head> 35 36 37<body> 38 <div class="highlight-clean" style="padding-bottom: 10px;"> 39 <div class="container" style="max-width: 1024px; margin-bottom: 20px;"> 40 <h1 class="text-center"><b>Direct Numerical Layout Generation for 3D Indoor Scene Synthesis via Spatial Reasoning</b></h1> 41 <div class="text-center" style="margin-top: 14px;"> 42 <span style="display: inline-block; color: rgb(48, 48, 48); font-size: 24px; font-weight: 800; letter-spacing: 0.05em;"> 43 NeurIPS 2025 44 </span> 45 </div> 46 </div> 47 48 49 <div class="container" style="max-width: 980px; margin-bottom: 20px;"> 50 <div class="row authors"> 51 <div class="col"> 52 <!-- <h5 class="text-center" style="text-align: center">Authors anonymized</h5> --> 53 <div class="text-center"> 54 <span class="author-block" style="font-size: 22px;"> 55 <a href="https://rxjfighting.github.io/">Xingjian Ran</a><sup>1,2</sup>,</span> 56 <span class="author-block" style="font-size: 22px;"> 57 <a href="https://yixuanli98.github.io/">Yixuan Li</a><sup>3</sup>,</span> 58 <span class="author-block" style="font-size: 22px;"> 59 <a href="https://eveneveno.github.io/lnxu/">Linning Xu</a><sup>3</sup>,</span> 60 <span class="author-block" style="font-size: 22px;"> 61 <a href="https://mulinyu.github.io/">Mulin Yu</a><sup>1</sup>,</span> 62 <span class="author-block" style="font-size: 22px;"> 63 <a href="https://daibo.info/">Bo Dai</a><sup>2</sup></span> 64 </div> 65 66 <div class="text-center"> 67 <span class="author-block" style="font-size: 22px;"><sup>1</sup>Shanghai Artificial Intelligence Laboratory</span> 68 <span class="author-block" style="font-size: 22px;"><sup>2</sup>The University of Hong Kong</span> 69 </div> 70 <div class="text-center"> 71 <span class="author-block" style="font-size: 22px;"><sup>3</sup>The Chinese University of Hong Kong</span> 72 </div> 73 </div> 74 </div> 75 <div class="buttons" style="margin-top: 8px; margin-bottom: 8px;"> 76 <a class="btn btn-light" role="button" href="https://arxiv.org/abs/2506.05341"> 77 <svg style="width:24px;height:24px;margin-left:-12px;margin-right:12px" viewBox="0 0 24 24"> 78 <path fill="currentColor" d="M16 0H8C6.9 0 6 .9 6 2V18C6 19.1 6.9 20 8 20H20C21.1 20 22 19.1 22 18V6L16 0M20 18H8V2H15V7H20V18M4 4V22H20V24H4C2.9 24 2 23.1 2 22V4H4M10 10V12H18V10H10M10 14V16H15V14H10Z"></path> 79 </svg>Paper 80 </a> 81 <a class="btn btn-light" role="button" href="https://github.com/rxjfighting/DirectLayout"> 82 <svg xmlns="http://www.w3.org/2000/svg" style="width:24px;height:24px;margin-left:-12px;margin-right:12px" viewBox="0 0 24 24"> 83 <path d="M12 0c-6.626 0-12 5.373-12 12 0 5.302 3.438 9.8 8.207 11.387.599.111.793-.261.793-.577v-2.234c-3.338.726-4.033-1.416-4.033-1.416-.546-1.387-1.333-1.756-1.333-1.756-1.089-.745.083-.729.083-.729 84 1.205.084 1.839 1.237 1.839 1.237 1.07 1.834 2.807 1.304 3.492.997.107-.775.418-1.305.762-1.604-2.665-.305-5.467-1.334-5.467-5.931 0-1.311.469-2.381 1.236-3.221-.124-.303-.535-1.524.117-3.176 0 0 1.008-.322 85 3.301 1.23.957-.266 1.983-.399 3.003-.404 1.02.005 2.047.138 3.006.404 2.291-1.552 3.297-1.23 3.297-1.23.653 1.653.242 2.874.118 3.176.77.84 1.235 1.911 1.235 3.221 0 4.609-2.807 5.624-5.479 5.921.43.372.823 1.102.823 86 2.222v3.293c0 .319.192.694.801.576 4.765-1.589 8.199-6.086 8.199-11.386 0-6.627-5.373-12-12-12z"></path> 87 </svg> 88 Code 89 </a> 90 </div> 91 </div> 92 93 <div class="container" style="max-width: 1024px;"> 94 <div class="row captioned_videos"> 95 <div class="col-md-12"> 96 <video controls style="width: 100%"> 97 <source src="static/videos/main_demo.mp4" type="video/mp4"> 98 </video> 99 </div> 100 </div> 101 </div> 102 103 104 <hr class="divider" /> 105 <div class="container" style="max-width: 1024px;"> 106 <div class="row"> 107 <div class="col-sm-12"> 108 <h2>Generated Samples</h2> 109 <p>Coarse-Grained Prompt:</p> 110 </div> 111 </div> 112 113 <div class="row captioned_videos"> 114 <div class="col-4"> 115 <div class="video-compare-container" style="width: 100%"> 116 <video class="video lazy" loop playsinline autoplay muted style="width: 100%"> 117 <source data-src="static/videos/computerlab.mp4" type="video/mp4"></source> 118 </video> 119 <h6 class="caption">A computer classroom with individual computer desks, ergonomic chairs, a projector screen, a table, a printer, and a network hub</h6> 120 </div> 121 </div> 122 <div class="col-4"> 123 <div class="video-compare-container" style="width: 100%"> 124 <video class="video lazy" loop playsinline autoplay muted style="width: 100%"> 125 <source data-src="static/videos/hallway.mp4" type="video/mp4"></source> 126 </video> 127 <h6 class="caption">A hallway with a shoe rack, coat hooks, mirror, bench, umbrella stand, table, and a rug</h6> 128 </div> 129 </div> 130 <div class="col-4"> 131 <div class="video-compare-container" style="width: 100%"> 132 <video class="video lazy" loop playsinline autoplay muted style="width: 100%"> 133 <source data-src="static/videos/kitchen.mp4" type="video/mp4"></source> 134 </video> 135 <h6 class="caption">A kitchen with a refrigerator, stove, sink, countertop, dining table, and several cabinets, along with a few bar stools</h6> 136 </div> 137 </div> 138 </div> 139 140 <div class="row"> 141 <div class="col-sm-12"> 142 <p>Medium-Grained Prompt:</p> 143 </div> 144 </div> 145 146 <div class="row captioned_videos"> 147 <div class="col-4"> 148 <div class="video-compare-container" style="width: 100%"> 149 <video class="video lazy" loop playsinline autoplay muted style="width: 100%"> 150 <source data-src="static/videos/hometheater.mp4" type="video/mp4"></source> 151 </video> 152 <h6 class="caption">In a home theater, a large screen is positioned against a wall, flanked by two speakers. In front of it, a round coffee table holds popcorn and potato chips. A sofa sits behind the coffee table, and several bean bags are arranged around it</h6> 153 </div> 154 </div> 155 <div class="col-4"> 156 <div class="video-compare-container" style="width: 100%"> 157 <video class="video lazy" loop playsinline autoplay muted style="width: 100%"> 158 <source data-src="static/videos/garage.mp4" type="video/mp4"></source> 159 </video> 160 <h6 class="caption">A garage features a large car centrally located, with storage shelves lining the back wall. A workbench and a toolbox are positioned beneath a pegboard, while a bicycle and a lawnmower are arranged nearby</h6> 161 </div> 162 </div> 163 <div class="col-4"> 164 <div class="video-compare-container" style="width: 100%"> 165 <video class="video lazy" loop playsinline autoplay muted style="width: 100%"> 166 <source data-src="static/videos/classroom.mp4" type="video/mp4"></source> 167 </video> 168 <h6 class="caption">A classroom is furnished with a teacher's desk at the front, facing an arrangement of student desks and chairs. A whiteboard is mounted on the front wall, and a projector hangs from the ceiling. A tall bookshelf also stands in the side</h6> 169 </div> 170 </div> 171 </div> 172 173 <div class="row"> 174 <div class="col-sm-12"> 175 <p>Fine-Grained Prompt:</p> 176 </div> 177 </div> 178 179 <div class="row captioned_videos"> 180 <div class="col-4"> 181 <div class="video-compare-container" style="width: 100%"> 182 <video class="video lazy" loop playsinline autoplay muted style="width: 100%"> 183 <source data-src="static/videos/gameroom.mp4" type="video/mp4"></source> 184 </video> 185 <h6 class="caption">A foosball table is at the center of a game room, with two gaming chairs positioned on its long sides. A large TV sits on a wooden stand against the wall, behind the foosball table. To the left of the TV is a silver mini fridge. On the other wall, a tall bookshelf is filled with board games. Two posters are displayed on the walls, one next to the bookshelf and one next to the TV</h6> 186 </div> 187 </div> 188 <div class="col-4"> 189 <div class="video-compare-container" style="width: 100%"> 190 <video class="video lazy" loop playsinline autoplay muted style="width: 100%"> 191 <source data-src="static/videos/winecellar.mp4" type="video/mp4"></source> 192 </video> 193 <h6 class="caption">A wine cellar with storage and tasting areas is depicted. Along two opposing walls, extensive wooden racks are filled with wine bottles. O
193n another wall, a collection of oak barrels is stacked, with a wooden crate. A tasting table, accompanied by a single chair, is centrally located within the room. On the table, there are two wine glasses and a corkscrew. A temperature gauge is mounted on the wall above the oak barrels, and two circular lighting fixtures on the ceiling</h6> 194 </div> 195 </div> 196 <div class="col-4"> 197 <div class="video-compare-container" style="width: 100%"> 198 <video class="video lazy" loop playsinline autoplay muted style="width: 100%"> 199 <source data-src="static/videos/table.mp4" type="video/mp4"></source> 200 </video> 201 <h6 class="caption">A wooden table holds a laptop on the front left corner, with a glass of colored pencils placed to its right. At the center back of the table sits a blue vase filled with flowers, and in front of the vase lie a pair of black-framed glasses. On the left side of the table is a white coffee cup, while a wooden chair is positioned in front of the table</h6> 202 </div> 203 </div> 204 </div> 205 </div> 206 207 <hr class="divider" /> 208 <div class="container" style="max-width: 1024px;"> 209 <div class="row"> 210 <div class="col-sm-12"> 211 <h2>Comparison Results</h2> 212 </div> 213 214 <div class="container" style="max-width: 1024px;"> 215 <div class="row captioned_videos"> 216 <div class="col-md-12"> 217 <img src="static/compare.png" alt="architecture" style="width: 100%"> 218 </div> 219 </div> 220 </div> 221 </div> 222 </div> 223 224 <hr class="divider" /> 225 226 <div class="container" style="max-width: 1024px;"> 227 <div class="row"> 228 <div class="col-md-12"> 229 <h2>Abstract</h2> 230 <p> 231 Realistic 3D indoor scene synthesis is crucial for Embodied AI and digital content creation. However, achieving high fidelity, strong generalization and precise controllability remains challenging due to complex semantic and physical constraints. Existing methods follow two paradigms: (1) Training models on layout datasets to directly generate numerical 3D layouts, which often generalize poorly to unseen room types; (2) Using LLMs/VLMs to produce open-vocabulary intermediate representations (e.g., scene graphs) followed by constraint-based optimization, improving plausibility but sacrificing flexibility due to predefined rules. Both approaches struggle to adapt to fine-grained user requirements. We introduce DirectLayout, a framework that directly generates numerical 3D layouts from text descriptions, without relying on intermediate representations and constrained optimization. DirectLayout decomposes the generation into three stages: producing a Bird's-Eye View (BEV) layout, lifting it into 3D space, and refining object placements for plausibility. To enable explicit spatial reasoning and help the model grasp basic principles of object placement, we employ Chain-of-Thought (CoT) activation based on the 3D-Front dataset. Additionally, we design CoT-Grounded Generative Layout Reward to enhance generalization and spatial planning. During inference, DirectLayout addresses asset-layout mismatches via Iterative Asset-Layout Alignment through in-context learning. Extensive experiments demonstrate that DirectLayout achieves impressive semantic consistency, generalization and physical plausibility. 232 </p> 233 </div> 234 </div> 235 </div> 236 237 <hr class="divider" /> 238 <div class="container" style="max-width: 1024px;"> 239 <div class="row"> 240 <div class="col-md-12"> 241 <h2>Method</h2> 242 <p> 243 Training Stage: BEV Layout Generator is first fine-tuned on BEV layouts curated from the 3D-Front dataset, guided by CoT annotations generated by GPT-4o. Subsequently, it is further optimized through DPO, leveraging CoT-Grounded Generative Layout Reward derived from Spatial Evaluator (VLM) and Quantitative Evaluator (reasoning LLM).<br> 244 Inference Stage: Given a text prompt, BEV Layout Generator produces a 2D layout, which is then lifted to a 3D layout by 3D Layout Generator. Iterative Asset-Layout Alignment refines the 3D scene by using the Spatial and Quantitative Evaluators to provide feedback to the layout generators, ensuring consistency between the layout and generated 3D assets from an object generator. 245 </p> 246 </div> 247 </div> 248 </div> 249 <div class="container" style="max-width: 1024px;"> 250 <div class="row captioned_videos"> 251 <div class="col-md-12"> 252 <img src="static/framework.png" alt="architecture" style="width: 100%"> 253 </div> 254 </div> 255 </div> 256 257 <!-- <hr class="divider" /> 258 <section class="section" id="BibTeX"> 259 <div class="container" style="max-width: 1024px;"> 260 <h2 class="title">BibTeX</h2> 261 <pre><code> 262@article{yi2023gaussiandreamer, 263 title={GaussianDreamer: Fast Generation from Text to 3D Gaussians by Bridging 2D and 3D Diffusion Models}, 264 author={Yi, Taoran and Fang, Jiemin and Wang, Junjie and Wu, Guanjun and Xie, Lingxi and Zhang, Xiaopeng and Liu, Wenyu and Tian, Qi and Wang, Xinggang}, 265 journal={arXiv preprint arXiv:2310.08529}, 266 year={2023} 267} 268 </code></pre> 269 </div> 270 </section> --> 271 272 <style> 273 footer { 274 padding-top: 80px; 275 padding-bottom: 1px; 276 } 277 </style> 278 279 <div class="container" style="max-width: 1024px;"> 280 <footer> 281 <p> Website template from <a href="https://dreamfusion3d.github.io/">DreamFusion</a>. We thank the authors for the open-source code.</p> 282 </footer> 283 </div> 284 285 286 287
287<script src="https://polyfill.io/v3/polyfill.js?features=IntersectionObserver"></script>
287 288
288<script src="assets/js/yall.js"></script>
288 289
289<script> 290 yall( 291 { 292 observeChanges: true 293 } 294 ); 295 </script>
295 296
296<script src="assets/js/scripts.js"></script>
296 297
297<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
297 298
298<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.5.0/js/bootstrap.bundle.min.js"></script>
298 299
299<script src="https://uploads-ssl.webflow.com/51e0d73d83d06baa7a00000f/js/webflow.fd002feec.js"></script>
299 300 <!-- Import the component --> 301</body> 302 303</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.