Commerce agent● operational

agents/image-enhancement-studio

Your supplier photographed it on a kitchen table. Amazon requires pure white.

There is a hand in the corner of the frame. The background is pine. The product fills forty percent of the image and Amazon wants eighty-five. Five channels want five different crops of it. Nobody is going to reshoot four thousand SKUs.

Derivative set1 source → 5 channels

IMG_4471.jpg

3024 × 4032 · 12 MP

wooden table · window light · hand in frame

Amazon main2000 × 2000 · pure white · 88% fillderived
eBay gallery1600 × 1600 · whitederived
Etsy thumbnail2000 × 2000 · whitederived
Shopify mobile1600 × 2000 · whitederived
WooCommerce2000 × 2000 · whitederived

Same photograph · five ratio and background contracts · switch sources below

The job

Imagery is the only attribute a shopper sees first.

Every other attribute on a listing is read after the click. Imagery is what earns the click, and it is the field most often supplied in whatever state the supplier happened to shoot it — a phone photo on a table, a scan of a catalog page, a 640-pixel grab from a distributor site that closed in 2018.

Meanwhile each channel enforces a different contract. Amazon wants square, pure white, product filling most of the frame. Shopify’s mobile grid wants 4:5. Etsy’s search favours lifestyle. eBay rejects borders and watermarks.

Reshooting is the correct answer and almost nobody can afford it at catalog scale. So the practical question is how much can honestly be derived from what already exists.

Quite a lot — cutouts, mattes, subject-aware reframing, colour normalisation. But not infinite resolution. Above a 2× upscale the model is inventing detail rather than recovering it, and this agent stops there and says so.

One derivation

One source. Five contracts. Not all satisfiable.

Three source conditions you will actually have in your library. The low-resolution grab is the honest one — it cannot become an Amazon main image, and no amount of processing changes that.

Source file

IMG_4471.jpg

Dimensions

3024 × 4032 · 12 MP

Condition

Wooden table, window light, hand in frame at lower right

Outcome

5 derived · 0 degraded · 0 blocked

Amazon main

1:1 · ≥1600 px · RGB 255,255,255 · ≥85% fill

2000 × 2000 · pure white · 88% fill

cutout · matte · reframe · hand removed

ok

eBay gallery

1:1 · ≥500 px · no borders or text

1600 × 1600 · white

cutout · matte · reframe

ok

Etsy thumbnail

1:1 · 2000 px recommended

2000 × 2000 · white

cutout · matte

ok

Shopify mobile

4:5 recommended for grid

1600 × 2000 · white

reframe · extend canvas

ok

WooCommerce

theme-dependent · no enforcement

2000 × 2000 · white

cutout · matte

ok
Capability ledger

Generative imagery can produce anything. On a product listing, that is a liability rather than a feature.

Does

Derives a compliant asset set per channel from one source, applying each marketplace's ratio, minimum resolution, background and frame-fill rules rather than exporting one file everywhere.

Removes what must not appear in a main image — the hand, the table, the packaging clutter, the reflected photographer — and mattes to true RGB 255,255,255 where required.

Reframes with subject awareness, so a 4:5 mobile crop does not cut through the product.

Routes an image to the slot it is actually eligible for, rather than failing it. A lifestyle shot becomes a secondary asset instead of a rejection.

Re-derives when a channel changes its imagery rules, and reports which SKUs now fall short.

Will not

Upscale beyond 2×. Super-resolution adds plausible pixels, not real detail — past that it is inventing product features.

Fabricate a view nobody photographed. It will not generate a rear or underside that does not exist in the source set.

Alter product colour to match a swatch. If the photograph and the attribute disagree, both are surfaced.

Retouch away a genuine physical defect visible in the source.

Composite a lifestyle scene implying a use case the record does not support.

Invocation

Point it at the asset folder you already have. Derivatives are generated per channel, on demand.

One source in, a derivative set out.

Direct invocation
POST /v1/agents/image-enhancement-studio/run

{
  "sku": "SP-X7-BLK",
  "source": "s3://assets/raw/IMG_4471.jpg",
  "channels": ["amazon", "ebay", "etsy", "shopify"],
  "max_upscale": 2.0,
  "on_below_minimum": "escalate"
}
Response
{
  "run_id": "run_7ca0be44",
  "derived": 5,
  "operations": ["cutout", "matte", "reframe", "object_removal"],
  "amazon": { "px": "2000x2000", "fill": 0.88, "bg": "255,255,255" },
  "shopify": { "px": "1600x2000", "ratio": "4:5" },
  "blocked": [],
  "notes": ["hand removed from lower-right of frame"]
}
On asset drop

Watches the folder where supplier photography lands.

On new channel

Derives the missing ratio set when you add a sales channel.

On rule change

Re-derives when a marketplace revises its imagery requirements.

In a pipeline

Runs alongside enrichment so imagery and attributes land together.

Deploy

Send the photos you are embarrassed by.

Two hundred of your worst supplier images. We will return the full per-channel derivative set for every one that can honestly be saved, and a reshoot list for every one that cannot. The second list is usually shorter than teams expect.

200 images · Originals untouched · Nothing published · 5 working days