Relationships before pixels
The model works with named objects, observed distances, scale estimates, and explicit constraints before Blender produces an image.
Loading SOILIE-3D
Research method
SOILIE-3D examines a cognitively inspired procedural scene generator in which observations become explicit constraints, coordinates, and an inspectible room.
Research question
SOILIE treats measurements from labelled RGB-D observations as a compact relational memory. It extracts object triplets, distances, angles, and scale estimates, then recombines compatible observations for a new collection of objects.
This is not a neural image generator, a theory of every form of imagery, or a validated simulation of a human mind. Its value is that the intermediate representation is legible: the sampled relations, rule order, placements, room boundaries, and rendered result can all be inspected.
Origin and intent
SOILIE-3D stands for Science of Imagination Lab Imagination Engine 3D. The project grew from the Science of Imagination Laboratory at Carleton University , where research includes visuospatial memory, reasoning, and imagined scenes.
The current unpublished V4 manuscript is authored by Isil Sanusoglu, Mike Cichonski, Michael O. Vertolli, and Jim Davies. It describes the research motivation and implementation, but it is not a peer-reviewed publication; this page therefore separates implemented behaviour from claims that still require evidence.
The implementation keeps relationships, dimensions, placement choices, failures, and generated artifacts visible so the model can be reproduced, questioned, and changed.
The model works with named objects, observed distances, scale estimates, and explicit constraints before Blender produces an image.
Placement order, opacity, coordinates, anchors, and room dimensions expose how each proposal was assembled.
Unsupported object combinations and generation failures are reported alongside successful outputs. Optional room-size adjustments remain separate from the model comparison.
What SOILIE V4 implements
The manuscript draws each rule from work on scene perception, imagery, memory, or intuitive physics. Encoding those ideas makes them testable; it does not by itself establish that people construct images in the same way.
SOILIE V4 draws relational measurements from Princeton SUN3D and Washington RGB-D Scenes v2. The Washington material contributes 14 indoor scenes covering nine labelled object classes, including tabletop objects, chairs, sofas, and tables.
SUN3D supplies 2D pixel labels while Washington supplies 3D point-cloud labels. Camera pose and intrinsic estimates project the Washington labels into 2D bounding boxes across 30 evenly distributed frames per scene.
Polygon centroids become A–B–C object triplets with measured distances and angles. Compatible triplets can then be recombined instead of retrieving an intact source room.
Objects use five overlapping size categories sampled toward a category centre. Assets are normalized upright, backs can face nearby walls, and front-any or front-front pairs orient related objects toward one another.
Floors and walls are generated as implicit architecture. Objects are grounded, while simplified support rules use surface shape and categorical size as proxies when resolving stacked arrangements.
Objects arrive one at a time. SOILIE V4’s focus schedule keeps the newest object fully present while earlier objects lose opacity, detail, brightness, and saturation. The formation camera uses a third-person viewpoint and turns toward each new focus. Although the manuscript proposes a five-item visibility limit, the current V4 alpha schedule does not strictly hide older items once six or more have appeared.
The ordinary render keeps the geometry opaque for inspection. The imagined render exposes V4’s recency and vividness hypotheses without confusing a visual effect with a measured property of human imagery.
Under the hood · 01
Select a stage to see what information exists at that point in the experiment.
Stage 01 · Observe
SUN3D supplies 2D labels. For Washington RGB-D Scenes v2, camera pose and intrinsic estimates project 3D point labels into 2D bounding boxes from 30 sampled frames per scene.
RGB-D frame + labels → object centroidsEvidence status
The manuscript reports qualitative inspection of generated scenes. Its examples show the rules operating together, but they do not establish correspondence with human imaginative processes.
Generated examples demonstrate varied arrangements, relationship-aware rotations, categorical scale, room boundaries, stacking attempts, colour sampling, and ordered visual fading.
The comparison below measures remaining object overlap, boundary intrusion, support, connected space, generation speed, and cost evidence. It distinguishes matched subsets from different native workloads and keeps AI opinions separate from human validation.
SOILIE V4 is best read as a transparent, cognitively inspired procedural scene-generation framework whose stronger cognitive claims remain open hypotheses.
Under the hood · 02
In this diagram, a link means that the pair participates in at least one recorded A–B–C triplet. A triplet is only recorded when one labelled frame contains three different objects, allowing two distances and their angle to be measured together. Two objects may therefore have appeared in the same frame without gaining a link if no eligible third object was present to complete the triplet.
Choose an object to highlight its triplet-supported neighbours. A requested set must remain connected through these recorded relationships.
Select a node to inspect its observed neighbours.
Room-generation comparisons
These measurements inspect completed placements: overlap, room boundaries, support, usable space, and generation time. They describe specific properties of indoor arrangements, not a model's overall intelligence or similarity to human imagination.
Loading the benchmark evidence…
Charts use completed rooms before the website’s optional room-size adjustment. Expand the notes beside a result for its calculation, room selection and measurement limits. The archive contains the complete measurements.
The mesh diagnostic uses evaluated triangles. Disjoint enclosing boxes prove separation; intersecting closed meshes permit Boolean volume measurement. Open or non-manifold meshes use surface-crossing tests instead. No surface crossing does not establish an enclosed volume or rule out containment inside an undefined interior, so zero means no intersection detected under these tests. Numerical contact no larger than one part per million of the smaller occupied volume is treated as zero. The published SOILIE corpus is accepted only when all 10,000 scenes have complete mesh results. Object-envelope overlap remains a separate cross-source diagnostic for releases such as LayoutGPT that provide boxes but not meshes.
Support uses sampled mesh surfaces where geometry and physical units are available; contact alone does not establish stability. Clearance is the largest connected floor region where the centre of a 0.6-metre-wide, 1.8-metre-tall cylinder can move. It is a narrow circulation diagnostic, not an accessibility certification. Measurements that require meshes, physical scale, or a defined room boundary remain unavailable when an external source release does not provide them.
Generated architecture is excluded from furniture-to-furniture overlap. Boundary checks use each model's generated or supplied room before cutaway rendering and before the website's optional room-size adjustment. Auto-built boundaries and fixed input floor plans remain different tasks.
SOILIE requests 3–6 object instances with duplicates enabled. Each repeated label remains a separate object. Bedroom and living-room presets contribute 5,000 rooms each, split equally between local and AWS Lambda execution.
Documented aliases normalize different names for the same class. Window, blinds, and curtain components form an architectural assembly and are excluded from furniture measurements.
Optional interface extension
Room-size control is a web-interface addition, not part of SOILIE-3D V4. The engine first completes V4’s placement unchanged. It then measures that arrangement and redraws only the floor and walls. This illustration lets you explore anchor choices manually; the deployed wrapper infers an anchor from V4’s wall-oriented objects.
Drag the cyan boundary to place it freely. Arrow keys move it by 0.1 m; hold Shift for 0.5 m.
Exact fit: the requested boundary contains every measured footprint.
Experiment guide
The public engine is a bounded research demonstrator. Basic mode needs no configuration; Advanced mode maps the terminal generation choices onto the same V4 functions.
Open the engineGenerate a random set, provide a specific list, or sample an available V4 bedroom, living-room, or kitchen combination. V4’s bathroom combination file is empty, so that preset is unavailable.
Queued, placing, rendering, and animating reflect worker progress. Missing-triplet and rendering failures are reported with their causes.
Compare ordinary and imagined views, then download the coordinates, normalized request, V4 animation, and result manifest.
Inputs and controls
Random samples a connected object set. Specific objects tests the labels you choose. Room type samples a supported room vocabulary.
Each scene contains three to six objects. A request may contain one to three scenes. Random mode can reuse one set or resample it for every scene.
Random mode may permit repeated classes. Specific mode accepts a repeated label directly; every copy receives a stable, independent instance ID.
The web demonstrator applies optional auto and custom sizing after V4 placement. Auto mode tightly wraps the final layout around a semantic anchor. Custom mode accepts width and depth from 1.0 to 20.0 metres; height follows the tallest object and a 2.4-metre minimum.
An integer seeds the random generators used by V4 for object selection, triplet sampling, dimensions, colours, asset choice, and render order. The container also fixes Python’s hash seed. Leave it empty when you want the service to choose one.
With multiple random scenes, reuse compares different placements of one collection. Turning it off tests independently sampled collections.
Reading a result
The V4 opaque bird’s-eye reference render of the proposed geometry.
V4’s recency-weighted third-person sequence, in which placement order changes visual emphasis.
The normalized request, V4 result rows, final room dimensions, seed, warnings, provenance, and links to every artifact.
This notice appears when the completed V4 arrangement extends beyond a requested width or depth. The boundary keeps every feasible requested axis and expands only deficient axes. No interior object is moved, rotated, or rescaled by this web extension.
Questions and failures
Use the stable code shown with an error when reporting a reproducible issue.
The labels are known, but the source observations do not connect them into one relation graph. Try a suggested combination or replace a disconnected object.
The V4 arrangement is completed before custom sizing is applied. If its measured bounds do not fit, the web extension keeps any sufficient requested axis and expands only the deficient axes away from an inferred wall anchor. It does not revise V4’s interior placement.
The public experiment is rate-limited to six scenes per visitor each UTC day, 20 scenes across the service per day, and 600 per month. Rendering capacity is limited to two concurrent scenes.
Generated artifacts expire after seven days unless their creator adds them to the public gallery. Download anything you want to keep privately.
The V4 pipeline could not complete the requested scene, for example because an ordered triplet needed by its coordinate construction was unavailable. The service reports the cause with the failed job.
The interface supports keyboard use, visible focus, scalable layouts, accessible status updates, and reduced motion. With reduced motion enabled, decorative animation stops and homepage formation previews become still images.
Limits and open questions
Object compatibility reflects two low-resolution, incompletely labelled RGB-D corpora without complete 360-degree coverage. Missing or noisy observations can distort size, distance, and angle estimates.
The Blender meshes represent object classes rather than the exact recorded objects. Bounds, categorical weight, and flat-surface checks do not capture every affordance or stability condition.
V4’s formation sequence uses the manuscript’s third-person viewpoint and turns toward each focal object. It does not model a moving observer, eye movements, embodied action, or a measured first-person view of mental imagery.
An upper object may be placed before its support and appear to float until a later step. Some asset transparency and texture choices can also produce visual artifacts.
Fading, focal lighting, item visibility, categorical size, and placement sequence are computational hypotheses. The code’s current alpha schedule also does not strictly enforce the manuscript’s proposed five-item visibility limit. No behavioural study has yet shown that these mechanisms predict subjective imagery.
The published analysis reports spatial geometry, successful-generation time, generation-stage charges, and a counterbalanced AI comparison under documented conditions. Human ratings and cognitive-process measures are still needed before making claims about human judgement or imagination.
Generate a seeded scene, download its coordinates, then run the same request again.
Run a reproducible experiment