Views
No views yet

Qwen/Qwen-Image-Layered. This model
was trained using Qwen 3.5 9b as the VLM teacher.adapter_config.json,
adapter_model.safetensors). The base model is pulled from Hugging Face
automatically (Qwen/Qwen-Image-Layered). See the
code repository for the inference
script.pip install torch diffusers transformers peft pillow numpytorch 2.11, diffusers 0.37, transformers 5.5, peft 0.18.
Requires one GPU — the base model is ~40 GB in bf16, so an 80 GB-class card
(A100-80 / H100 / H200) is comfortable.Heun sampler · 50 steps · CFG 1.0 · 640 px · 4 layers
| Setting | Value | Flag |
|---|---|---|
| Sampler | Heun (2nd order) | always used — not configurable |
| Steps | 50 | --steps 50 |
| CFG / guidance | 1.0 (off) | --guidance-scale 1.0 |
| Resolution | 640 px (max dim) | --size 640 |
| Layers | 4 | --num-layers 4 |
1# single image
2python decompose.py --input photo.png --output results/
3
4# a directory of images
5python decompose.py --input images/ --output results/
6
7# RGBA layers with real alpha (for compositing / editors)
8python decompose.py --input images/ --output results/ --transparent
9
10# explicit LoRA location
11python decompose.py --input photo.png --output results/ --lora ./modelresults/<image_name>/
source.png # input, resized
composite.png # layers recomposited — compare against source as a sanity check
layer_0.png # background (inpainted behind the removed objects)
layer_1.png # object layers, back-to-front
layer_2.png
layer_3.pnglayer_0 is the background, higher indices sit
on top. Not every image needs all 4 — unused layers come out blank, which is
normal.--transparent to get RGBA with real alpha, which is what you want when
importing into an editor or compositing them yourself.seed + image_index
(--seed 42 by default), so the same inputs give the same outputs."a clean, well composed image") is fine —
override with --prompt if you want.--size and both
dimensions are rounded to multiples of 16.@article{stablelayers2026,
author = {},
title = {Stable Layers: Decomposing Images into Editable RGBA Layers},
journal = {arXiv preprint arXiv:2605.30257},
year = {2026}
}