Een doos van 39 cm mag niet zo groot zijn als een kast

Vibe coding · 5 min leestijd
Een doos van 39 cm mag niet zo groot zijn als een kast

Ik loop al een tijdje tegen hetzelfde muurtje aan. AI maakt inmiddels waanzinnig mooie sfeerbeelden — een product in een echte kamer, mooi licht, echte schaduw, je gelooft het meteen. Behalve één ding.
De maat klopt niet.
Een opbergbox van 39 cm staat ineens zo groot als een halve kast. Een knuffelbeer torent boven een salontafel uit. Een staande lamp is zo klein dat je 'm bijna niet ziet. Voor één plaatje geef je nog wel een duwtje. Maar voor een assortiment van honderden producten? Onwerkbaar. Dan ben je de hele dag bezig met "nee, kleiner. Nee, groter. Nee, néé."
En dus dacht ik: dit moet anders.

Het probleem zit dieper dan je denkt

Mijn eerste reflex was, zoals altijd: gewoon beter vragen. "Zet dit product op realistische schaal ten opzichte van de persoon van 1,80 m." Klinkt logisch, toch?
Werkt dus niet. Of nauwelijks.
Ik ben me erin gaan verdiepen en er is zelfs een hele benchmark voor waarin ze precies dit testen — snapt een beeldmodel hoe groot dingen ten opzichte van elkaar horen te zijn? Het antwoord is pijnlijk: zo goed als geen enkel model komt hier fatsoenlijk doorheen. Ze scoren nauwelijks beter dan gokken. Een tekstinstructie is een hint, geen garantie. Het model doet er iets mee, en dan alsnog wat het zelf mooi vindt.
En dat is de kern. Zolang je de maat als tekst meegeeft, blijf je gokken. Punt.

Het inzicht: schaal moet je berekenen, niet vragen

Op een gegeven moment viel het kwartje. Waarom zou ik het model laten bepalen hoe groot iets is, terwijl ik de echte afmetingen gewoon heb? Hoogte, breedte, diepte — dat staat allemaal keurig in de productdatabase. Die getallen zijn hard. Waarom zou ik die weggooien en vervolgen laten raden?
Dus keerde ik het om.
Je zet één ijkpunt in de scène. Een persoon van 1,80 m bijvoorbeeld. Die persoon is in het beeld een bepaald aantal pixels hoog — zeg 620. Dan weet je meteen: 620 pixels = 180 cm. Oftewel: elke centimeter in de echte wereld is in dít beeld precies 3,44 pixels. Simpele wiskunde, één keer uitrekenen.
En vanaf dat moment weet je alles. Een doos van 39 cm breed? Die is dan gewoon 39 × 3,44 = 134 pixels breed. Geen mening, geen gok, geen "vind ik mooi". Gewoon een som.


Hierboven zie je precies wat ik bedoel. De persoon links is het ijkpunt. De box, de lamp en de beer ernaast zijn niet "op gevoel" geplaatst — ze zijn uitgerekend vanuit hun echte afmetingen. Reken maar terug: die beer komt uit op 30 cm, precies wat 'ie in het echt is. Dat is geen toeval. Dat is architectuur.

En wat mag de AI dan nog wél?

Nou, best veel. Alleen niet de maat.
Het idee is dat je het product programmatisch — dus gewoon met code, niet met een prompt — op de exact berekende grootte in het beeld plakt. Op de grondlijn, netjes met een schaduwtje eronder. Vanaf dat moment ligt de maat vast. Beton.
Dán pas laat je de AI los. Maar met een heel klein opdrachtje: "blend dit product mooi in de scène, match het licht en de schaduw, en verder blijf je overal vanaf." De AI doet waar 'ie goed in is — sfeer, licht, realisme — en niet waar 'ie slecht in is: inschatten hoe groot een doos hoort te zijn.

De vertrouwen-maar-controleer-stap

Nu ben ik lang genoeg met AI bezig om te weten: zeg tegen een model "blijf overal vanaf" en de kans is reëel dat het alsnog stiekem iets verschuift of oprekt. Dat gedrag ken ik. Daar trap ik niet meer in.
Dus zit er een controle op. Automatisch. Nadat de AI z'n ronde heeft gedaan, zoekt het systeem het product weer op in het eindbeeld en meet: staat 'ie nog op de goede plek, en heeft 'ie nog de goede grootte? Wijkt het meer dan een paar procent af, dan gaat het gewoon opnieuw. En als het na een paar pogingen nog steeds niet klopt? Dan gaat er een vlaggetje omhoog en kijk ik er zelf even naar.
Belangrijk detail: dit is een meting, geen tweede AI die "even beoordeelt of het er goed uitziet". Want zo'n oordeel is precies weer datzelfde gokwerk. Een liniaal liegt niet. Een AI die naar een plaatje kijkt en zegt "ziet er goed uit" wel.

Wat er nu staat (en wat nog niet — eerlijk zijn)

Er draait een werkend prototype. De rekenstap klopt, de composite klopt, en de demo hierboven is er letterlijk uitgerold — inclusief de terugrekening die bewijst dat de maten kloppen tot op de centimeter. Dat deel is af en, eerlijk, best bevredigend om te zien.
Wat nog moet:

  • De harmonisatie in de praktijk testen. Het licht laten inblenden zónder dat het product gaat zweven. Daar zit het echte werk.

  • Het drift-percentage meten. Hoe vaak gaat het model tóch schuiven? Dat cijfer bepaalt of de simpele aanpak volstaat of dat ik naar zwaarder geschut moet.

  • Kalibreren op schaal. Het idee is: kalibreer 20 scènes één keer goed, en hergebruik ze voor 800 producten. Dat moet zich nog bewijzen.

Dus nee, ik roep niet dat het "af" is. Maar het fundament staat, en dit is het fundament waarvan ik geloof dat het klopt. Schaal is geen kwestie van mooi vragen. Schaal is rekenen.
En de AI? Die mag alles doen. Behalve de maat bepalen.
Endoor. Peter.