Skip to content

themikulrai/SuperRoom

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SuperRoom: structure-preserving, style-retargeted room generation

Preview

Project Page

What it is

SuperRoom generates digital cousins of an existing indoor scene: stylistic and geometric variations that preserve layout, object positions, and scales while adapting shapes and materials to a target text prompt (e.g., “modern kitchen”). Rooms stay editable: you can move, resize, and regenerate objects without breaking structure.

We represent each scene as a superquadric proxy (parametric primitives capturing object extents and poses) and perform text-conditioned retargeting of shape and image-conditioned retargetting of texture under hard constraints from the proxy. This cleanly separates what must not change (layout, affordances, spatial feasibility) from what should change (style, shape and fine geometry), yielding structure-preserving yet visually diverse rooms.

We release code and interface for our method.

How it works

  • Input: Complex objects in the scene can be represented by data efficient parametric primitives (Superquadrics)
  • 3D generation: We use SpaceControl/TRELLIS to guide diffusion at test time with superquadric constraints—no extra training.
  • Deterministic, batched scene generation: Iterate per object with fixed seeds; batch across rooms × prompts × seeds; runs headless on multi-GPU.
  • Test with Prototype then finalise: Generate geometry first, then texture with multi-view conditioning for cleaner mapping and consistency.
  • Fixing the input: Fix the first stage of pointclouds by Plane-fit points to roof → rasterize/close holes → meshify → clone to floor → extrude walls for stable diffusion targets = complete watertight envelope.

Key features

  • Object-first editing: Per-object visibility, labels, select/duplicate/delete; edit dataset (superquadric shape/scale).
  • Lighting & background: One-click white/black background; presets (six-point rig or single bulb) with intensity/color controls.
  • Modes: Generation / Saved Scene.
  • Room envelope tools: Compute or import cached envelopes; optional “plain envelope” cache for fast previews.
  • Prompting: Global room prompt OR manual per-object text or image prompts for the active object.
  • Determinism & seeds: Reproducible outputs with seed control; mini 3-object sanity run.
  • Batching: Iterate objects; run full prototypes → full pass; batch across datasets × prompts from CSV and scale linearly with GPUs.
  • Scenes Browser: Load saved scenes by dataset × prompt × seed from the UI.
  • Robust core: OOM auto-switch, deterministic seeds, envelope caching, GLB export, memory monitor.

How to get this working?

pip install -r requirements.txt

P.S. I have tried my best to get this working out of the box but might need some debugging

About

Uses SuperDec and SuperGen built on Trellis to create customized meshes for the entire scene

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages