[ICCV 2025] LayerD: Decomposing Raster Graphic Designs into Layers
See the code
LayerD is a layer decomposition method that extracts editable layers from raster graphic design images. This repository contains the official implementation of our ICCV 2025 paper.
See our project page for more details.
Install LayerD with pip:
pip install git+https://github.com/CyberAgentAILab/LayerD.git
For other installation options (dataset generation, training, development), see the Installation Guide.
Decompose an image into layers and export to SVG:
from layerd import LayerDPipeline
from PIL import Image
pipeline = LayerDPipeline(device="cpu")
image = Image.open("./data/test_image_2.png")
result = pipeline(image)
result.save("output.svg")
The pipeline handles decomposition, organization, and export in one call. Results include organized elements with type classification (text/vector/image).
Use LayerDPipeline when you want:
See the Pipeline Guide for details.
Use LayerD when you need:
See the Inference Guide for details.
Best for:
Best for:
See the Export Guide for detailed format comparison.
For fine-grained control, use the low-level API:
from layerd import LayerD
layerd = LayerD(matting_hf_card="cyberagent/layerd-birefnet").to("cpu")
layers = layerd.decompose(image)
# ... custom postprocessing ...
See the Inference Guide for low-level API details.
LayerD supports loading custom-trained BiRefNet weights from local paths or remote URLs:
from layerd import LayerD
# Local weights
layerd = LayerD(matting_weight_path="./my_birefnet.pth")
# Remote weights (requires appropriate fsspec backend, e.g., gcsfs for gs://)
layerd = LayerD(matting_weight_path="gs://my-bucket/models/birefnet.pth")
This project is licensed under the Apache-2.0 License. See the LICENSE file for details.
LayerD uses several third-party libraries. See docs/architecture.md for details on bundled dependencies.
If you find this project useful in your work, please cite our paper.
@inproceedings{suzuki2025layerd,
title={LayerD: Decomposing Raster Graphic Designs into Layers},
author={Suzuki, Tomoyuki and Liu, Kang-Jun and Inoue, Naoto and Yamaguchi, Kota},
booktitle={ICCV},
year={2025}
}
173 followers · starred Sep 2025
807 followers · starred May 2026
262 followers · starred Jun 2026
[ICCV 2025] LayerD: Decomposing Raster Graphic Designs into Layers
See the code
LayerD is a layer decomposition method that extracts editable layers from raster graphic design images. This repository contains the official implementation of our ICCV 2025 paper.
See our project page for more details.
Install LayerD with pip:
pip install git+https://github.com/CyberAgentAILab/LayerD.git
For other installation options (dataset generation, training, development), see the Installation Guide.
Decompose an image into layers and export to SVG:
from layerd import LayerDPipeline
from PIL import Image
pipeline = LayerDPipeline(device="cpu")
image = Image.open("./data/test_image_2.png")
result = pipeline(image)
result.save("output.svg")
The pipeline handles decomposition, organization, and export in one call. Results include organized elements with type classification (text/vector/image).
Use LayerDPipeline when you want:
See the Pipeline Guide for details.
Use LayerD when you need:
See the Inference Guide for details.
Best for:
Best for:
See the Export Guide for detailed format comparison.
For fine-grained control, use the low-level API:
from layerd import LayerD
layerd = LayerD(matting_hf_card="cyberagent/layerd-birefnet").to("cpu")
layers = layerd.decompose(image)
# ... custom postprocessing ...
See the Inference Guide for low-level API details.
LayerD supports loading custom-trained BiRefNet weights from local paths or remote URLs:
from layerd import LayerD
# Local weights
layerd = LayerD(matting_weight_path="./my_birefnet.pth")
# Remote weights (requires appropriate fsspec backend, e.g., gcsfs for gs://)
layerd = LayerD(matting_weight_path="gs://my-bucket/models/birefnet.pth")
This project is licensed under the Apache-2.0 License. See the LICENSE file for details.
LayerD uses several third-party libraries. See docs/architecture.md for details on bundled dependencies.
If you find this project useful in your work, please cite our paper.
@inproceedings{suzuki2025layerd,
title={LayerD: Decomposing Raster Graphic Designs into Layers},
author={Suzuki, Tomoyuki and Liu, Kang-Jun and Inoue, Naoto and Yamaguchi, Kota},
booktitle={ICCV},
year={2025}
}
173 followers · starred Sep 2025
807 followers · starred May 2026
262 followers · starred Jun 2026