This evening began with an email. Not complicated, just that familiar problem: AI images look good, but they don't form a series. Light varies, background varies, each run feels different. Individually they work, but together they don't. Simply not production-ready.
So, first the logical path again. Bring in Zappa, tighten the prompts, leave less room. There was already a lot in that — 310 lines of prompt discipline, five modules, everything locked. You think that's where it lies. But somewhere in the evening, you reach that point where it starts to irritate. You keep tweaking and correcting, and each run is slightly different again. And then you feel: I'm not going to solve this here.
That's where the shift occurred.
No longer trying to get it perfect before generation, but accepting that Higgsfield starts anew each time. So that part keeps moving, no matter what you do. From there, it became practical. Keep generating images and see where it goes wrong. Not by taste but by behaviour. Where does the light shift, where does the background change, where does it break.
At the same time, brought in Claude — not to write prompts, but to think along technically. What can you do post-generation without regenerating? That's where Replicate came into play. New to me, discovered this evening. A platform where open-source AI models run on others' GPUs, callable via API. Not as a replacement for Higgsfield, but for one thing: masking. Separating the model from the background via rembg, an AI model that generates an alpha mask — determining pixel by pixel what is model and what is background.
And that's when it clicked.
Because that mask gives you control. You're no longer dependent on how Higgsfield sets up its studio. You can intervene yourself. Make the background uniform, stabilise the light. Not to make it prettier, but to make it consistent.
Technically, it works like this: the mask separates foreground from background, but not binary — hair pixels are in between, semi-transparent. A hard cut gives colour fringes in the hair. The solution is soft alpha blending: each pixel is weighted mixed between original and tinted. Hair at alpha 0.4 gets a subtle mix instead of a hard colour boundary. That was the difference between "looks edited" and "looks studio".
On top of that: texture enhancement for fabric detail, sharpness for edges, and two automatic crops based on where the model stands in the image. Full body at 1060×1280 ratio, knee-cropped at 65% model height. All server-side via Sharp, all in one API call.
We've also documented the reference logic for Higgsfield. Strict separation: first image is the face (identity lock), then clothing (isolated, product only), last image only for pose and expression. No blending between roles. If you don't explicitly enforce that in your prompt, Higgsfield mixes everything together. That prompt is now copyable on the page.
And that's where it changed this evening. Not one image, but the series. It starts to hold together. It no longer feels like individual renders, but like one setting.
The chain is now: Zappa generates the prompt from a reference image. Higgsfield creates the image with separated references. Post-production aligns the whole — masking, tint, texture, crops. Three tools, one pipeline, built and integrated in one evening.
The entire post-production module now runs as a demo in Zappa. Upload your Higgsfield image, set your background colour, and you have studio-ready cutouts.
This is just the beginning. First prototype. But this is also far from where we started, because this morning I didn't have this. And that's what makes it interesting — now it truly begins.