You ran a batch of 50-100 images through your SD/ComfyUI workflow. Cherry-picked the best 10-15. Some nailed the face but the outfit is wrong. Others have the perfect outfit but the expression drifted. Others got the accessories right but the pose is off.
The standard fix: re-run the pipeline with regional prompting, inpainting, or ControlNet adjustments. Each fix is another generation pass: more GPU time, more electricity, more waiting. Compix skips all of that. Upload your 10 best outputs, draw freeform shapes on the swappable regions, and get 6,500+ unique combinations without touching your pipeline again. It runs in your browser: your outputs never leave your machine, and Mix uses a free account.
FROM YOUR BATCH
Cherry-pick the usable outputs, mark the regions worth keeping, and every combination is computed at full resolution. No ControlNet pass, no inpainting round, no GPU time.
Apply different prompts to different regions of a NEW image. Complex to set up, unreliable at region boundaries, still generates new pixels. Each variation is a new generation pass consuming GPU time.
Fix one region of one image by regenerating it. Result is unpredictable: the new region may not match the original style. Each fix is a separate GPU pass. And you can't specify "use the exact face from batch image 3."
Takes your EXISTING batch outputs. Extracts exact pixel regions. Combines them in every mathematical combination. The face from batch image 3 is the ACTUAL pixels from batch image 3. No generation. No GPU. 9 images × 3 shapes = 6,500+ variations in seconds.
From your ComfyUI workflow, A1111 batch, or Forge output folder: pick the 5-15 images with the best individual regions. They don't all need to be good. They just each need at least one great part: a face, an outfit, a pose, an accessory.
Upload all images. One becomes your anchor, the rest become variation sources. They should be the same resolution and roughly the same framing, which they will be if they came from the same batch parameters.
Freeform shape around the head. Rectangle around the torso/outfit. Circle around an accessory. Each shape is an axis of variation. Inside each shape, the exact pixels from every source image appear as clickable options.
Hit Generate. Every permutation of every region across every source image is computed. 9 images × 3 shapes = 6,500+. Each result is full resolution, pixel-exact. No ControlNet, no LoRA, no sampler settings. Pure combinatorial math in the browser.
Compix uses the browser Canvas API for all pixel operations. No WASM, no WebGL, no server. The combinatorial engine computes all non-empty subsets of shapes, then for each subset computes all variant assignments across source images. Each combination gets a two-pass offscreen render at full resolution: base layer from the anchor, then each active shape region composited from the assigned source. The formula: sources × (2shapes - 1) × variantsactive_shapes. Pure math. Deterministic. Runs in milliseconds per combination.
Your generator already organized tonight’s work for you. A1111 and Forge write batches to dated folders under outputs/txt2img-images: sort by time and grab the run. ComfyUI’s SaveImage node drops everything into output with your filename prefix. Select the whole run and drag it into Compix: every file becomes a state in one drop, up to 50.
The batches that mix best are the ones you already run: the same prompt across seeds (an X/Y/Z plot’s seed axis), a LoRA weight sweep, a denoise ladder. Fixed composition with regional drift is ideal input: the character holds position while faces, hands, and clothing vary, which is exactly what freeform shapes extract.
Two settings help before you generate. Keep batch dimensions identical: the pixel lock needs matched sizes. And prefer PNG output over JPEG if you plan to pixel-diff the results: compression noise shows up in the heatmap as low-level texture that isn’t real change.
Hires-fix and upscaled outputs are welcome: more resolution inside every extracted region. If your workflow ends in an upscaler node, feed Compix the upscaled files, not the base pass.
Yes, with one step: the plot grid image itself is a single file, so save the individual images too (enable “Save individual images” in the script options, or pull them from the output folder). Drop the individual files: each becomes its own comparison state and mixing source.
How 9 images become 72 combinations with 1 shape, and 6,500+ with 3 shapes. The complete guide. See the math →
The technical deep dive: combinatorial mixing vs AI blending, the formula, and why generation platforms will never build this. Read more →
Before combining, blink-compare your batch to quickly identify which images have the best regions. Compare →
Using the same combinatorial engine with Midjourney outputs — different source, same math. Midjourney guide →