Harvard AI and Robotics Lab, Harvard University
Reproduction and analysis of the original ChordEdit paper ([CVPR 2026 Oral]tmux) by Liangsi Lu, Xuhang Chen, Minzhe Guo, Shichu Li, Jingchao Wang, and Yang Shi.
All ablation study results, evaluation metrics, and intermediate outputs are available on Hugging Face. We are open to discussing reproduction details, ablation settings, and any discrepancies with the original results. Please contact us at liminghan0330@gmail.com.
This averages the 700 PIE-Bench samples in PIE-Bench.
| Method | Structure Dist. ↓ | PSNR ↑ | LPIPS ↓ | MSE ↓ | SSIM ↑ | CLIP Src. ↑ | CLIP Tgt. ↑ | CLIP Edit ↑ |
|---|---|---|---|---|---|---|---|---|
| ChordEdit (Naive, paper) | 0.02544 | 21.38 | 0.1313 | 0.00973 | 0.7439 | - | 25.11 | 21.96. |
| ChordEdit (Naive, Reprod.) | 0.0457 | 20.14 | 0.1559 | 0.0133 | 0.7327 | 25.4281 | 25.1151 | 22.5767 |
| ChordEdit (Paper) | 0.01658 | 22.20 | 0.12825 | 0.00684 | 0.7591 | - | 25.58 | 22.96 |
| ChordEdit (Reprod.) | 0.0295 | 22.64 | 0.1185 | 0.0080 | 0.7675 | 25.4281 | 24.8226 | 22.1554 |
To reproduce the ablation results:
- Download PIE-Bench from the official GitHub repository and place it at:
datasets/PIE-Bench_v1 - Run the Stable Diffusion ablation script:
bash scripts/run_sd_ablation.sh
- Evaluate the generated outputs with the external evaluation script:
bash external/evaluation/run_eval.sh
- Plot and merge the ablation results:
python scripts/plot_performance_ablation.py python scripts/find_top_ablation_samples.py python scripts/make_selected_ablation_image_rows.py
- Python 3.12
- PyTorch 2.5.0
- This repository requires the
sd-turboweights: https://huggingface.co/stabilityai/sd-turbo - Model root should contain:
unet/scheduler/text_encoder/tokenizer/vae/
pip install -r requirement.txtLaunch the interactive demo:
python app.py --model-root /path/to/sd-turbo --server-port 7860Running python app.py now launches a local Gradio web app.
- Left panel: upload the original image, set source prompt, target prompt, and tuning parameters.
- Right panel: view the edited output image.
- Bottom section: click built-in examples (image + source prompt + target prompt) to auto-fill inputs.
Run PIE-Bench export with:
python run_pie_bench.py --model-root /path/to/sd-turbo --pie-root /path/to/pie_bench--pie-root should point to a PIE-Bench folder containing at least:
annotation_images/— original PIE-Bench images (subfolders keep the official naming).mapping_file.json— the mapping metadata describing prompts, instructions, and masks.
Example layout:
pie_bench
|-annotation_images
|-mapping_file.json
For PIE-Bench data preparation and protocol details, please refer to: https://github.com/cure-lab/PnPInversion
If you find our work helpful, please star 🌟 this repo and cite 📑 our paper. Thanks for your support!
@article{li2026rethinking,
title={Rethinking One-Step Image Editing through ChordEdit: Reproduction, Simplification, and New Insights},
author={Li, Minghan and Moebel, Jeremy and Wang, Mengyu},
journal={arXiv preprint arXiv:2606.14042},
year={2026}
}
@article{lu2026chordedit,
title={ChordEdit: One-Step Low-Energy Transport for Image Editing},
author={Lu, Liangsi and Chen, Xuhang and Guo, Minzhe and Li, Shichu and Wang, Jingchao and Shi, Yang},
journal={arXiv preprint arXiv:2602.19083},
year={2026}
}
