Build Notes6 min read

How I Stopped My AI Fashion Studio From Changing the Garment

By Ergini, Software & AI Developer

TL;DR

AURA Studio, the AI fashion studio I built, turns a garment and a model into on-model photos. Its first renders looked editorial and changed the product: stripes changed count, a logo became a lookalike, navy drifted toward black. Better prompts barely helped. What worked was treating the flat lay as ground truth: colors, prints and proportions measured and every render checked against them in code, structured presets and a queue for consistent batches, upscaling only after approval, and a person approving every image, with AI disclosure built into the export.

The render that looked perfect

The first images out of AURA Studio were the kind you screenshot and send to people. A model on a clean set, soft window light from the left, a navy Breton top that looked as if a stylist had spent twenty minutes on the hem. I had built the studio to replace the product photoshoot: upload a model, upload a garment, choose the pose, the background, the camera and the light, and get an editorial image back.

Then I put the render next to the flat lay it came from, and the excitement went out of the room.

The top had eleven stripes across the chest. The render had nine. The small embroidered anchor on the left breast had become a different, vaguely nautical squiggle. The navy had slid toward black under the warm light, and the hem sat two fingers lower than on the real garment. Nobody glancing at the image would notice. Anybody who bought the top from it would.

That was the moment AURA stopped being an image generator for me and became a different problem. A product photo has one job: to show the product. An image that is beautiful and wrong is worse than no image, because it becomes a return, a complaint and a customer who does not trust the next photo either.

What the model is actually doing

It helps to be honest about the machine. An image model does not copy a garment onto a person. It looks at the garment, forms an idea of it, and paints a new picture in which that idea is worn. It is rewarded for plausibility. Fidelity is a side effect it achieves most of the time and misses in exactly the places a shopper looks: repeating patterns, small marks and text, and color under changing light.

My first reaction was the one everybody has, and it was wrong: better prompts. "Keep the stripes exactly as in the reference." "Do not alter the logo." It helped a little, sometimes, which is the worst kind of help, because it makes you believe the problem is almost solved. The model cannot count stripes on command. It never saw them as stripes to count.

So I changed the question. Instead of asking the model to be faithful, I made the studio check whether it had been.

The garment is the ground truth

The rule that shaped everything after that was simple: the flat lay and the close-ups are the truth, and every render is a claim about them that has to be tested.

When a garment comes in, the studio samples its colors from the flat lay, in regions that are clearly lit, and stores them in a perceptual color space, where a distance between two colors roughly matches how different they look to a person. Close-ups of prints, logos and trims are kept as references at full resolution. The outline of the garment on its hanger or table gives the proportions: where the hem falls relative to the armhole, how long the sleeve runs.

Every render then goes through ordinary code before anyone sees it as final. The garment region is found in the image, its colors are compared with the reference under a correction for the scene's light, and the print area is compared with the close-up at matching scale. Nothing here needs a model to have an opinion. It needs measurements, and a threshold that decides what counts as the same top.

What gets checkedAgainst whatWhat happens when it fails
Color of the garmentColors sampled from the flat layFlagged, with the two colors shown side by side
Print, stripes and logosThe close-up, at the same scaleFlagged, with the region circled
Proportions and hemThe garment's outline on the flat layFlagged when the hem or sleeve moves beyond tolerance
The model's face and bodyThe model reference for the batchRegenerated, so a collection keeps one consistent person
Everything a person seesThe reviewer's eyeApproved, sent back, or marked for a real shoot

The Breton top went through that loop again. Two renders came back with nine stripes and were flagged before I saw them. The third kept all eleven. That is the whole trick: not a model that never makes mistakes, but a system that does not let its mistakes through.

Presets, batches and a queue

The second thing I learned is that a brand never needs one image. It needs forty styles in three colorways, all looking as if they were shot on the same day, by the same photographer, on the same person. A free-text prompt is the enemy of that. Two slightly different sentences produce two slightly different collections.

So the controls in AURA are structured rather than typed: pose, background, camera and lighting are parameters, and a combination can be saved as a preset. A preset is a look you can apply to a whole batch, and reproduce next season. Generation runs through a queue, because image models are slow and a batch of a hundred renders should not depend on anyone keeping a browser tab open. Each job has a status, and failures retry on their own.

Upscaling comes last, and only for images a person has approved. Upscaling every candidate would multiply the cost of renders nobody will ever use, and it would make the flagged ones look more convincing than they deserve.

What I refused to automate

One step in AURA is deliberately not clever: a person approves every image before it is used. The checks catch what can be measured. A reviewer catches what cannot: a hand holding the bag at an impossible angle, fabric that looks right but would never fall that way, a model whose expression is wrong for the brand. Approval is quick because the checks have already removed the obvious failures, so the reviewer spends their attention on the images that could actually go live.

Two more things are not optional. The people in the images come from model references used with their permission, and a release for a studio shoot is not automatically a release for AI generation. And every exported image carries its disclosure and machine-readable provenance, because in the EU a generated photo of a person that looks real has to say what it is. I wrote up what the AI Act asks of fashion imagery separately.

What I would tell a brand before its first render

Start from what you already own: good flat lays, close-ups of every print and logo, and one honest color reference per colorway. Expect jersey, shirting and simple dresses to work well, and complex prints, sheers, sequins and heavy knits to fail more often; keep a real shoot for those and for your hero images. Budget reviewer time, because that is where the quality comes from. And never publish an image that no check and no person has looked at.

If you want to see the studio itself, AURA Studio is here. If you want the same discipline built around your own catalog, with your color standards, your approval flow and publishing to your store, the full design is in the blueprint for on-model imagery for every SKU, and it is the kind of AI workflow automation I build.

Frequently asked questions

Why do AI fashion images change the garment?

Because image models are built to produce a plausible picture, not a faithful copy. They redraw the garment from what they understood of it, so fine stripes change count, small logos turn into lookalikes, and colors drift with the lighting of the scene. A better prompt does not fix that. Checking every image against the real garment, and routing failures to a person, does.

Which garments are hardest for AI on-model imagery?

Plain jersey, shirting and simple dresses usually come out well. Complex repeating prints, small logos and text, sheer fabrics, sequins and heavy knits fail far more often, because they are exactly the details a model tends to reinvent. A good pipeline knows which of your styles fall into the hard group and sends those back to a real shoot.

Do AI-generated model photos need to be labeled in the EU?

For images of people that would pass as real photographs, yes. Article 50 of the EU AI Act requires deepfakes to be disclosed, and generated images to carry machine-readable marking. I build the label and the provenance metadata into the export step, so no image can leave the studio without them.