UCSC-VLAA/GPT-Image-Edit-1.5M

Dataset

89

stars

20

commits

6

linked in READMEs

Aug 21, 2025

updated

image
image-editing
instruction-guided
instruction-tuning
multimodal
Browse cluster: Image Editing and Manipulation β†’

README

GPT-Image-Edit-1.5M A Million-Scale, GPT-Generated Image Dataset

πŸ“ƒArxiv | 🌐 Project Page | πŸ’»Github

GPT-Image-Edit-1.5M is a comprehensive image editing dataset that is built upon HQ-Edit, UltraEdit, OmniEdit and Complex-Edit, with all output images regenerated with GPT-Image-1.

πŸ“£ News

  • [2025.08.20] πŸš€ We provide a script for multi-process downloading. See Multi-process Download.
  • [2025.07.27] πŸ€— We release GPT-Image-Edit, a state-of-the-art image editing model with 1.5M high-quality editing samples. All data, models, training code and evaluation code are open-sourced. Our code is based on UniWorld-V1, Thanks to the authors of UniWorld-V1. Checking our report for more details. Welcome to watch πŸ‘€ this repository for the latest updates.

Dataset Statistics Summary

Full Dataset Overview

Dataset SourceTotal SamplesInstruction TypesDescription
HQ-Edit183,182OriginalFully-synthetic image editing dataset with high-quality input and output images
UltraEdit100,008OriginalComprehensive image editing dataset with 9 editing tasks
OmniEdit1,270,385Original/Rewrited/ComplexLarge-scale multi-task dataset with original, rewrited and Complex-Edit style instructions
Total1,553,575Original/Rewrited/ComplexComplete unified dataset with output images re-edited with GPT-Image-1

Instruction Complexity Distribution

  • Original Instructions :
    • 1,140,182 samples
    • Same instructions from the original dataset
    • Basic to moderate complexity
  • Rewrited Instructions:
    • 100,000 samples
    • Instructions rewrited based on the input image and new output image
    • Enhanced complexity
  • Complex Instructions:
    • 313,393 samples
    • Complex-edit style instructions, with $C_3$ level complexity
    • Advanced complexity

Detailed Breakdown by Source and Task

HQ-Edit Dataset (183,182 samples)

SubfolderSamplesInput SourceInstruction SourceOutput Source
edit89,585HQ-Edit's original input imagesHQ-Edit's original rewrited instructionsGPT-edited output images
generate93,597Input images generated with original captionsHQ-Edit's original rewrited instructionsGPT-edited output images

Output images of 89,585 samples in edit subfolder are based on the original input images of HQ-Edit but edited with GPT-Image-1. 93,597 samples in generate subfolder have the input images re-genererated with GPT-Image-1 and then edited by the same model to produce output images.

OmniEdit Dataset (1,270,385 samples)

TaskSamplesRewrite Instructions
addition189,33614,385
attribute_modification204,06514,509
env137,44014,509
removal149,76313,497
style14,40514,405
swap (object + background)261,98328,695
complex-edit313,393–

Output images from OmniEdit are re-edited with original input images and instructions with GPT-Image-1. Additionally, we sampled 313,393 input images from OmniEdit and generated Complex-Edit style instructions, with $C_3$ level complexity.

UltraEdit Dataset (100,008 samples)

TaskSamples
add11,112
change_color11,112
change_global11,112
change_local11,112
others11,112
replace11,112
transform_global11,112
transform_local11,112
turn11,112

100,008 samples from UltraEdit, uniformly sampled from 9 categories, have original input images re-edited by GPT-Image-1 with original instructions.

Unified Directory Structure

gpt-edit/
β”œβ”€β”€ hqedit/
β”‚   β”œβ”€β”€ edit/
β”‚   β”‚   β”œβ”€β”€ input/                    # Original input images
β”‚   β”‚   β”œβ”€β”€ output/                   # GPT-generated edited images
β”‚   β”‚   └── metadata/
β”‚   β”‚       └── hqedit_edit.json      # 89,585 samples
β”‚   └── generate/
β”‚       β”œβ”€β”€ input/                    # Generated input images
β”‚       β”œβ”€β”€ output/                   # Generated output images
β”‚       └── metadata/
β”‚           └── hqedit_generate.json  # 93,597 samples
β”œβ”€β”€ omniedit/
β”‚   β”œβ”€β”€ addition/
β”‚   β”‚   β”œβ”€β”€ input/                    # Original input images
β”‚   β”‚   β”œβ”€β”€ output/                   # Original + GPT outputs
β”‚   β”‚   └── metadata/
β”‚   β”‚       └── omniedit_addition.json
β”‚   β”œβ”€β”€ attribute_modification/
β”‚   β”œβ”€β”€ background_swap/
β”‚   β”œβ”€β”€ complex-edit/
β”‚   β”œβ”€β”€ env/
β”‚   β”œβ”€β”€ object_swap/
β”‚   β”œβ”€β”€ removal/
β”‚   β”œβ”€β”€ style/
β”‚   └── swap/
└── ultraedit/
    β”œβ”€β”€ add/
    β”‚   β”œβ”€β”€ input/                    # Original input images
    β”‚   β”œβ”€β”€ output/                   # GPT-generated outputs
    β”‚   └── metadata/
    β”‚       └── ultraedit_add.json
    β”œβ”€β”€ change_color/
    β”œβ”€β”€ change_global/
    β”œβ”€β”€ change_local/
    β”œβ”€β”€ others/
    β”œβ”€β”€ replace/
    β”œβ”€β”€ transform_global/
    β”œβ”€β”€ transform_local/
    └── turn/

Please note that samples in gpt-edit/omniedit/swap are NOT a third kind of swap operation but haven't yet been classified into background_swap or object_swap.

Metadata Format

All metadata files follow a unified JSON structure:

Common Fields

{
  "id": "string",                    # Unique identifier: <dataset>_<task>_<id>
  "dataset_source": "string",       # "hqedit" | "omniedit" | "ultraedit"
  "task": "string",                 # Task category (e.g., "edit", "addition", "add")
  "input": "string",                # Relative path to input image: "input/<id>.png"
  "output": "string",               # Relative path to output image: "output/<id>.png"
  "instruction": "string",          # Editing instruction text
  "instruction_type": "string",     # "original" | "rewrite" | "complex"
  "input_description": "string"     # Description of the input image
}

Dataset-Specific Fields

OmniEdit

{
  "instruction_original": "string"  # Original instruction (for rewrite cases)
}

Usage Guide

Download

You can download the dataset using git lfs from the Hugging Face Hub:

git lfs install
git clone https://huggingface.co/datasets/UCSC-VLAA/GPT-Image-Edit-1.5M

Multi-process Download

We provide a script for faster download with multi-processing.

  1. Download the script.

    wget https://huggingface.co/datasets/UCSC-VLAA/GPT-Image-Edit-1.5M/blob/main/download.sh
    
  2. Use the script for multi-process downloading.

    bash download.sh -d <dataset_name> -o <your_directory>/gpt-edit -p <process_number>
    

    <dataset_name> should be one of hqedit/ultraedit/omniedit.

Prepare the Data

The annotation JSON files are located in UCSC-VLAA/gpt-image-edit-training/training_json.

To prepare a data.txt file for training (as mentioned in the associated GitHub repository), use the following format:

  1. The first column is the root path to the image.
  2. The second column is the corresponding annotation JSON file.
  3. The third column indicates whether to enable the region-weighting strategy (we use false in our training setting).

An example data.txt for gpt-edit can be found in the GitHub repository, or an example structure is:

data/gpt-edit/hqedit/edit,training_json/hqedit_gpt_edit.json,false
data/gpt-edit/hqedit/generate,training_json/hqedit_gpt_generate.json,false
data/gpt-edit/omniedit,training_json/omniedit_gpt.json,false
data/gpt-edit/omniedit,training_json/omniedit_gpt_rewrite.json,false
data/gpt-edit/omniedit/complex-edit,training_json/complexedit_gpt.json,false
data/gpt-edit/ultraedit,training_json/ultraedit_gpt.json,false

Working with Image Paths

Paths in metadata are relative to the task directory

# Input: "input/00070858.png" -> hqedit/edit/input/00070858.png
# Output: "output/00070858.png" -> hqedit/edit/output/00070858.png

πŸ“Š Benchmarks

GEdit-EN-full

ModelBG
Change
Color
Alt.
Mat.
Mod.
MotionPortraitStyleAddRemoveReplaceTextToneAvg
Open-Sourced Models
AnyEdit4.314.252.640.671.901.953.723.753.230.774.212.85
MagicBrush6.175.414.751.552.904.105.534.135.101.335.074.19
Instruct-Pix2Pix3.945.403.521.272.624.393.071.503.481.135.103.22
OmniGen5.235.935.443.123.174.886.336.355.344.314.965.01
Step1X-Edit7.036.266.463.665.237.247.176.427.397.406.626.44
Bagel7.446.996.265.094.826.047.947.377.317.166.176.60
Bagel-thinking7.227.246.697.126.036.177.937.447.453.616.366.66
Ovis-U17.496.886.214.795.986.467.497.257.274.486.316.42
OmniGen2-----------6.42
Step1X-Edit (v1.1)7.457.386.954.734.707.118.207.597.807.916.856.97
FluxKontext dev7.067.035.525.624.685.556.956.766.136.107.486.26
Proprietary Models
Gemini7.117.146.475.673.994.958.126.897.416.857.016.51
Doubao8.077.367.205.386.287.208.057.717.874.017.676.98
GPT-4o6.966.857.105.416.747.447.518.738.558.458.697.49
Ours7.807.547.127.757.096.748.047.957.175.456.957.24

Complex-Edit

MethodIFIPPQOverall
AnyEdit1.608.157.255.67
UltraEdit6.565.937.296.59
OmniGen6.256.427.546.74
FluxKontext Dev8.568.398.518.49
Imagen37.566.557.677.26
SeedEdit8.496.918.748.04
GPT-4o9.297.519.478.76
Ours8.998.418.938.78

ImgEdit-Full

ModelAddAdjustExtractReplaceRemoveBackgroundStyleHybridActionOverall
MagicBrush2.841.581.511.971.581.752.381.621.221.90
Instruct-Pix2Pix2.451.831.442.011.501.443.551.201.461.88
AnyEdit3.182.951.882.472.232.242.851.562.652.45
UltraEdit3.442.812.132.961.452.833.761.912.982.70
OmniGen3.473.041.712.942.433.214.192.243.382.96
Step1X-Edit3.883.141.763.402.413.164.632.642.523.06
ICEdit3.583.391.733.152.933.083.842.043.683.05
BAGEL3.563.311.703.302.623.244.492.384.173.20
UniWorld-V13.823.642.273.473.242.994.212.962.743.26
OmniGen23.573.061.773.743.203.574.812.524.683.44
Ovis-U14.133.622.984.454.064.224.693.454.614.00
FluxKontext dev3.763.452.153.982.943.784.382.964.263.52
GPT-4o4.614.332.904.353.664.574.933.964.894.20
Ours4.073.792.044.133.893.904.843.044.523.80

πŸ‘ Acknowledgement and Related Work

  • UniWorld-V1: UniWorld-V1 is a unified framework for understanding, generation, and editing.
  • ImgEdit: ImgEdit is a large-scale, high-quality image-editing dataset comprising 1.2 million carefully curated edit pairs and a comprehensive benchmark for image editing.
  • Complex-edit: Complex-edit is benchmark for complex image editing.
  • Qwen2.5-VL: The new flagship vision-language model of Qwen.
  • FLUX.1-Kontext-dev: A state-of-the-art image editing model.
  • Step1X-Edit: A state-of-the-art image editing model and a comprehensive benchmark for image editing.
  • OmniGen2: A state-of-the-art image editing model and a comprehensive benchmark for image editing.

Citation

If you find our paper useful, please cite us with

@misc{wang2025gptimageedit15mmillionscalegptgeneratedimage,
      title={GPT-IMAGE-EDIT-1.5M: A Million-Scale, GPT-Generated Image Dataset}, 
      author={Yuhan Wang and Siwei Yang and Bingchen Zhao and Letian Zhang and Qing Liu and Yuyin Zhou and Cihang Xie},
      year={2025},
      eprint={2507.21033},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2507.21033}, 
}

Contributors

LAOS-Y

18 commits

cihangxie

1 commits

nielsr

1 commits

UCSC-VLAA/GPT-Image-Edit-1.5M

Dataset

89

stars

20

commits

6

linked in READMEs

Aug 21, 2025

updated

image
image-editing
instruction-guided
instruction-tuning
multimodal
Browse cluster: Image Editing and Manipulation β†’

README

GPT-Image-Edit-1.5M A Million-Scale, GPT-Generated Image Dataset

πŸ“ƒArxiv | 🌐 Project Page | πŸ’»Github

GPT-Image-Edit-1.5M is a comprehensive image editing dataset that is built upon HQ-Edit, UltraEdit, OmniEdit and Complex-Edit, with all output images regenerated with GPT-Image-1.

πŸ“£ News

  • [2025.08.20] πŸš€ We provide a script for multi-process downloading. See Multi-process Download.
  • [2025.07.27] πŸ€— We release GPT-Image-Edit, a state-of-the-art image editing model with 1.5M high-quality editing samples. All data, models, training code and evaluation code are open-sourced. Our code is based on UniWorld-V1, Thanks to the authors of UniWorld-V1. Checking our report for more details. Welcome to watch πŸ‘€ this repository for the latest updates.

Dataset Statistics Summary

Full Dataset Overview

Dataset SourceTotal SamplesInstruction TypesDescription
HQ-Edit183,182OriginalFully-synthetic image editing dataset with high-quality input and output images
UltraEdit100,008OriginalComprehensive image editing dataset with 9 editing tasks
OmniEdit1,270,385Original/Rewrited/ComplexLarge-scale multi-task dataset with original, rewrited and Complex-Edit style instructions
Total1,553,575Original/Rewrited/ComplexComplete unified dataset with output images re-edited with GPT-Image-1

Instruction Complexity Distribution

  • Original Instructions :
    • 1,140,182 samples
    • Same instructions from the original dataset
    • Basic to moderate complexity
  • Rewrited Instructions:
    • 100,000 samples
    • Instructions rewrited based on the input image and new output image
    • Enhanced complexity
  • Complex Instructions:
    • 313,393 samples
    • Complex-edit style instructions, with $C_3$ level complexity
    • Advanced complexity

Detailed Breakdown by Source and Task

HQ-Edit Dataset (183,182 samples)

SubfolderSamplesInput SourceInstruction SourceOutput Source
edit89,585HQ-Edit's original input imagesHQ-Edit's original rewrited instructionsGPT-edited output images
generate93,597Input images generated with original captionsHQ-Edit's original rewrited instructionsGPT-edited output images

Output images of 89,585 samples in edit subfolder are based on the original input images of HQ-Edit but edited with GPT-Image-1. 93,597 samples in generate subfolder have the input images re-genererated with GPT-Image-1 and then edited by the same model to produce output images.

OmniEdit Dataset (1,270,385 samples)

TaskSamplesRewrite Instructions
addition189,33614,385
attribute_modification204,06514,509
env137,44014,509
removal149,76313,497
style14,40514,405
swap (object + background)261,98328,695
complex-edit313,393–

Output images from OmniEdit are re-edited with original input images and instructions with GPT-Image-1. Additionally, we sampled 313,393 input images from OmniEdit and generated Complex-Edit style instructions, with $C_3$ level complexity.

UltraEdit Dataset (100,008 samples)

TaskSamples
add11,112
change_color11,112
change_global11,112
change_local11,112
others11,112
replace11,112
transform_global11,112
transform_local11,112
turn11,112

100,008 samples from UltraEdit, uniformly sampled from 9 categories, have original input images re-edited by GPT-Image-1 with original instructions.

Unified Directory Structure

gpt-edit/
β”œβ”€β”€ hqedit/
β”‚   β”œβ”€β”€ edit/
β”‚   β”‚   β”œβ”€β”€ input/                    # Original input images
β”‚   β”‚   β”œβ”€β”€ output/                   # GPT-generated edited images
β”‚   β”‚   └── metadata/
β”‚   β”‚       └── hqedit_edit.json      # 89,585 samples
β”‚   └── generate/
β”‚       β”œβ”€β”€ input/                    # Generated input images
β”‚       β”œβ”€β”€ output/                   # Generated output images
β”‚       └── metadata/
β”‚           └── hqedit_generate.json  # 93,597 samples
β”œβ”€β”€ omniedit/
β”‚   β”œβ”€β”€ addition/
β”‚   β”‚   β”œβ”€β”€ input/                    # Original input images
β”‚   β”‚   β”œβ”€β”€ output/                   # Original + GPT outputs
β”‚   β”‚   └── metadata/
β”‚   β”‚       └── omniedit_addition.json
β”‚   β”œβ”€β”€ attribute_modification/
β”‚   β”œβ”€β”€ background_swap/
β”‚   β”œβ”€β”€ complex-edit/
β”‚   β”œβ”€β”€ env/
β”‚   β”œβ”€β”€ object_swap/
β”‚   β”œβ”€β”€ removal/
β”‚   β”œβ”€β”€ style/
β”‚   └── swap/
└── ultraedit/
    β”œβ”€β”€ add/
    β”‚   β”œβ”€β”€ input/                    # Original input images
    β”‚   β”œβ”€β”€ output/                   # GPT-generated outputs
    β”‚   └── metadata/
    β”‚       └── ultraedit_add.json
    β”œβ”€β”€ change_color/
    β”œβ”€β”€ change_global/
    β”œβ”€β”€ change_local/
    β”œβ”€β”€ others/
    β”œβ”€β”€ replace/
    β”œβ”€β”€ transform_global/
    β”œβ”€β”€ transform_local/
    └── turn/

Please note that samples in gpt-edit/omniedit/swap are NOT a third kind of swap operation but haven't yet been classified into background_swap or object_swap.

Metadata Format

All metadata files follow a unified JSON structure:

Common Fields

{
  "id": "string",                    # Unique identifier: <dataset>_<task>_<id>
  "dataset_source": "string",       # "hqedit" | "omniedit" | "ultraedit"
  "task": "string",                 # Task category (e.g., "edit", "addition", "add")
  "input": "string",                # Relative path to input image: "input/<id>.png"
  "output": "string",               # Relative path to output image: "output/<id>.png"
  "instruction": "string",          # Editing instruction text
  "instruction_type": "string",     # "original" | "rewrite" | "complex"
  "input_description": "string"     # Description of the input image
}

Dataset-Specific Fields

OmniEdit

{
  "instruction_original": "string"  # Original instruction (for rewrite cases)
}

Usage Guide

Download

You can download the dataset using git lfs from the Hugging Face Hub:

git lfs install
git clone https://huggingface.co/datasets/UCSC-VLAA/GPT-Image-Edit-1.5M

Multi-process Download

We provide a script for faster download with multi-processing.

  1. Download the script.

    wget https://huggingface.co/datasets/UCSC-VLAA/GPT-Image-Edit-1.5M/blob/main/download.sh
    
  2. Use the script for multi-process downloading.

    bash download.sh -d <dataset_name> -o <your_directory>/gpt-edit -p <process_number>
    

    <dataset_name> should be one of hqedit/ultraedit/omniedit.

Prepare the Data

The annotation JSON files are located in UCSC-VLAA/gpt-image-edit-training/training_json.

To prepare a data.txt file for training (as mentioned in the associated GitHub repository), use the following format:

  1. The first column is the root path to the image.
  2. The second column is the corresponding annotation JSON file.
  3. The third column indicates whether to enable the region-weighting strategy (we use false in our training setting).

An example data.txt for gpt-edit can be found in the GitHub repository, or an example structure is:

data/gpt-edit/hqedit/edit,training_json/hqedit_gpt_edit.json,false
data/gpt-edit/hqedit/generate,training_json/hqedit_gpt_generate.json,false
data/gpt-edit/omniedit,training_json/omniedit_gpt.json,false
data/gpt-edit/omniedit,training_json/omniedit_gpt_rewrite.json,false
data/gpt-edit/omniedit/complex-edit,training_json/complexedit_gpt.json,false
data/gpt-edit/ultraedit,training_json/ultraedit_gpt.json,false

Working with Image Paths

Paths in metadata are relative to the task directory

# Input: "input/00070858.png" -> hqedit/edit/input/00070858.png
# Output: "output/00070858.png" -> hqedit/edit/output/00070858.png

πŸ“Š Benchmarks

GEdit-EN-full

ModelBG
Change
Color
Alt.
Mat.
Mod.
MotionPortraitStyleAddRemoveReplaceTextToneAvg
Open-Sourced Models
AnyEdit4.314.252.640.671.901.953.723.753.230.774.212.85
MagicBrush6.175.414.751.552.904.105.534.135.101.335.074.19
Instruct-Pix2Pix3.945.403.521.272.624.393.071.503.481.135.103.22
OmniGen5.235.935.443.123.174.886.336.355.344.314.965.01
Step1X-Edit7.036.266.463.665.237.247.176.427.397.406.626.44
Bagel7.446.996.265.094.826.047.947.377.317.166.176.60
Bagel-thinking7.227.246.697.126.036.177.937.447.453.616.366.66
Ovis-U17.496.886.214.795.986.467.497.257.274.486.316.42
OmniGen2-----------6.42
Step1X-Edit (v1.1)7.457.386.954.734.707.118.207.597.807.916.856.97
FluxKontext dev7.067.035.525.624.685.556.956.766.136.107.486.26
Proprietary Models
Gemini7.117.146.475.673.994.958.126.897.416.857.016.51
Doubao8.077.367.205.386.287.208.057.717.874.017.676.98
GPT-4o6.966.857.105.416.747.447.518.738.558.458.697.49
Ours7.807.547.127.757.096.748.047.957.175.456.957.24

Complex-Edit

MethodIFIPPQOverall
AnyEdit1.608.157.255.67
UltraEdit6.565.937.296.59
OmniGen6.256.427.546.74
FluxKontext Dev8.568.398.518.49
Imagen37.566.557.677.26
SeedEdit8.496.918.748.04
GPT-4o9.297.519.478.76
Ours8.998.418.938.78

ImgEdit-Full

ModelAddAdjustExtractReplaceRemoveBackgroundStyleHybridActionOverall
MagicBrush2.841.581.511.971.581.752.381.621.221.90
Instruct-Pix2Pix2.451.831.442.011.501.443.551.201.461.88
AnyEdit3.182.951.882.472.232.242.851.562.652.45
UltraEdit3.442.812.132.961.452.833.761.912.982.70
OmniGen3.473.041.712.942.433.214.192.243.382.96
Step1X-Edit3.883.141.763.402.413.164.632.642.523.06
ICEdit3.583.391.733.152.933.083.842.043.683.05
BAGEL3.563.311.703.302.623.244.492.384.173.20
UniWorld-V13.823.642.273.473.242.994.212.962.743.26
OmniGen23.573.061.773.743.203.574.812.524.683.44
Ovis-U14.133.622.984.454.064.224.693.454.614.00
FluxKontext dev3.763.452.153.982.943.784.382.964.263.52
GPT-4o4.614.332.904.353.664.574.933.964.894.20
Ours4.073.792.044.133.893.904.843.044.523.80

πŸ‘ Acknowledgement and Related Work

  • UniWorld-V1: UniWorld-V1 is a unified framework for understanding, generation, and editing.
  • ImgEdit: ImgEdit is a large-scale, high-quality image-editing dataset comprising 1.2 million carefully curated edit pairs and a comprehensive benchmark for image editing.
  • Complex-edit: Complex-edit is benchmark for complex image editing.
  • Qwen2.5-VL: The new flagship vision-language model of Qwen.
  • FLUX.1-Kontext-dev: A state-of-the-art image editing model.
  • Step1X-Edit: A state-of-the-art image editing model and a comprehensive benchmark for image editing.
  • OmniGen2: A state-of-the-art image editing model and a comprehensive benchmark for image editing.

Citation

If you find our paper useful, please cite us with

@misc{wang2025gptimageedit15mmillionscalegptgeneratedimage,
      title={GPT-IMAGE-EDIT-1.5M: A Million-Scale, GPT-Generated Image Dataset}, 
      author={Yuhan Wang and Siwei Yang and Bingchen Zhao and Letian Zhang and Qing Liu and Yuyin Zhou and Cihang Xie},
      year={2025},
      eprint={2507.21033},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2507.21033}, 
}

Contributors

LAOS-Y

18 commits

cihangxie

1 commits

nielsr

1 commits