Nodes/comfyui-superside-nodes/Superside Smart Detail Sheet
ComfyUI Node

Superside Smart Detail Sheet

The Node That Turns a Product Photo Into a Spec Sheet, Automatically

By Superside·Created about a month ago·Updated 3 days ago· 1
Superside Smart Detail Sheet
  • image
  • image
  • info
api_key
product_categoryauto
num_details3
detail_hint
crop_scale2.0
modelopenai/gpt-4o
crop_size_percent35.00

Every e-commerce listing needs a shot that shows the product and its interesting details up close - the hinge, the logo, the texture of the fabric. Building those "detail callout" sheets by hand is a fiddly Photoshop job. Superside Smart Detail Sheet automates it end to end: a vision LLM finds the visually interesting details in your photo, the node crops each one, upscales the crops locally, and composites the original plus enlarged callouts into one finished spec-sheet image. Feed it a photo, get a deliverable.

How it works

The detection is a two-mode story, and the mode is picked by product_category:

  • auto (default) - a vision LLM (chosen by the model dropdown: gemini-2.5-flash, gemini-2.5-pro, gpt-4o, claude-sonnet-4.6) looks at the image and returns JSON bounding boxes for the num_details (1–6, default 3) most interesting details. The node retries automatically if the model returns prose instead of JSON, a zero-size box, or overlapping zones - a nice robustness touch.
  • eyewear - for glasses, free-form LLM judgement proved unreliable (it kept conflating "nose pad" and "hinge" onto the same spot), so this mode forces exactly three fixed zones using Florence-2's grounding endpoint instead: the nose pad, the hinge screw, and a temple tip. It overrides num_details and model.

From there it's local image work: each crop is a fixed-size square centered on the detected detail's center point (not the raw bounding box edges - that's what keeps crops consistent despite imprecise boxes), upscaled with Lanczos (crop_scale, 1–4x, default 2 - no extra API call for the upscaling), and composited into the final layout: side column for portrait originals, a row below for landscape/square. Crops that land on a flat, blank region are auto-discarded - the info output tells you what was kept and what was dropped.

The inputs that matter

  • image + api_key - the required pair.
  • product_category - auto or eyewear. This is the decision that changes the whole detection path.
  • num_details - how many callouts in auto mode (ignored for eyewear).
  • detail_hint - free text to steer the auto model toward what you think is interesting.
  • crop_size_percent - each crop's square size as a percent of the original's shorter side, default 35%. Smaller keeps callouts subtle; larger makes them dominant.

Outputs: image - the finished sheet - and info, JSON with the kept details, discard count, and settings used.

Installing it

It's in comfyui-superside-nodes - clone, install requirements, restart:

cd ComfyUI/custom_nodes
git clone https://github.com/Superside/comfyui-superside-nodes.git
cd comfyui-superside-nodes
pip install -r requirements.txt

Paste your fal api_key. No model files; the detection call is metered and your product photo leaves the machine for the vision model.

The honest take

This is the most genuinely clever node in the pack - a real production workflow (spec sheets) compressed into one drop. The trade-offs: the auto detection is only as good as the vision model, so check the info output on the first pass and use detail_hint to steer it; and because the detail selection is probabilistic, a batch of fifty products needs a spot-check pass before it ships. For a catalogue where the details must land in the same spots every time, you're better off with the pack's Manual Detail Sheet (you draw the boxes once per profile) - the Smart version shines when every product is different and you want the interesting parts found for you.

CategorySuperside

Inputs (8)

NameTypeDefaultDescription
imageIMAGE
api_keySTRING
product_categoryoptCOMBOauto"auto" lets the model freely pick whichever details look most interesting. "eyewear" instead forces exactly 3 fixed, reliable zones every time: the nose pad + its mounting clip, the bridge/hinge assembly (with any decorative hardware), and a temple tip - overriding num_details.
num_detailsoptINT31–6How many detail close-ups to find and crop. Ignored when product_category is "eyewear" (always 3 fixed zones).
detail_hintoptSTRING
crop_scaleoptFLOAT2.01–4How much to enlarge each detail crop (Lanczos resize, no AI upscaling).
modeloptCOMBOopenai/gpt-4o4 options: google/gemini-2.5-flash, google/gemini-2.5-pro, openai/gpt-4o, anthropic/claude-sonnet-4.6
crop_size_percentoptFLOAT35.005–100Size of each detail crop as a percent of the original photo's shorter side, always a square centered on the detected detail. A fixed size (instead of expanding the model's own bounding box) keeps crops consistent and robust to imprecise/oddly-shaped boxes.

Outputs (2)

NameTypeDescription
imageIMAGE
infoSTRING