Skip to Main Content

Realroom

Built at Meta Global AI Developer Hackathon · Oct 26, 2026 · Remote

Realroom — Demo video

Realroom is an agent that puts real, buyable furniture into a photo of your own room and leaves the rest of the photo alone. You upload a room photo and write one sentence about what you want. Realroom reads the room, plans what to add or replace, searches 4,375 real products for pieces whose listed dimensions fit the space, and renders them into the photo. Then it checks its own work before it hands you a result. I study AI at Kookmin University. When I moved to Seoul for university, I set up my first room and had to buy new furniture for it, a dresser and a desk among other pieces, and decor to go with them. Room makeover generators draw a pleasant room, but the sofa in it is not one you can buy, nobody checked that it fits the wall, and the generator quietly repaints the walls and the floor. Realroom keeps the room you have and changes only what you would actually buy. Five Meta models do the work: - Muse Spark 1.3 (Meta Model API) reads the room in one request: every movable object, the fixed structure, the room's size and light, and a plan of slots with size ranges in centimeters. It picks products from numbered contact sheets for all slots at once, so the set works together, and it judges every rendered product against its catalog photo. - SAM 3.1 (Meta Model API) turns Spark's boxes into exact masks, finds every new product again in each render, and checks that the clutter it cleared is really gone. - Muse Image 1.0 (Meta Model API) draws two or three candidates from the room, a placement guide and the real product photos, and redraws any product that Spark scores as only partly right. - Muse Spark Open (open weights, served on Baseten and Fireworks) tagged and described all 4,375 catalog products, including the short phrase SAM 3.1 later uses to find each product in a render. It also caught 104 listings whose photo did not show the listed product, and those were dropped. - Perception Encoder (PE-Core B16, open weights) runs inside the app's own server and matches each slot's look against the product photos. No render is used as it comes back. Each candidate is aligned to the original photo, SAM 3.1 finds every product again and Spark scores it, and the best candidate is kept. Spark's verdict on the same pixels can change from one request to the next, so it then checks each product three more times, each check a separate request, and a product counts as a match only when at least two of the three say so. A weak product is cut out and redrawn, two tries a round for up to two rounds, and a redraw replaces the current version only if Spark scores it higher. The result then takes only the product masks, contact shadows and cleared spots from the render and copies every other pixel from your photo. On the three demo rooms, 63.6% to 68.7% of the pixels are identical to the original, and the page lets you count them yourself: your browser downloads both lossless PNGs and compares them pixel by pixel. The recorded demo runs took 384 to 477 seconds and cost an estimated $0.39 to $0.58 at Meta's published prices. A run on the hosted app draws fewer candidates and redraws at most one product, and costs about $0.2 to $0.5. Every call is in the run's ledger. To see it without waiting, open a demo room at https://chanjoongx--realroom.us-east.modal.run: it replays a recorded run step by step and shows the model each step called and what it cost. The upload box runs the whole agent live on your own photo. A live run takes about four to eight minutes, and the page follows it while it works. I built it for people furnishing a first place, as I was. It also helps renters who cannot paint, and anyone who wants to see one big piece in their own room before buying it. A store can plug in its own catalog: Realroom needs a kind, real dimensions and one clean photo per product. The agent, the web app, the catalog index and the demo rooms were all built during the hackathon, October 27 to November 4, 2026. Product photos and listings are from Amazon Berkeley Objects (Amazon.com, CC BY 4.0), and the open-source libraries are listed in the README's Credits. The repository has 224 tests, and GitHub Actions runs them on every push to main with no key. They replay the three recorded runs against their ledgers, feed the pipeline broken model replies, and fail if the agent's code holds a URL outside Meta's API or names a common non-Meta model. What's next: - A store's own catalog with prices and stock. The demo dataset, Amazon Berkeley Objects, was published in 2021 and has no prices. - A measured room size. Today Spark estimates it from things like door and bed sizes. - Subtle textures and colors. Rugs with a fine weave often come out too bold, and bedding often comes out darker or grayer than its catalog photo, so these are the products the fix step redraws most often. When a redraw still falls short, the page says so.

Team