LAION-SG
收藏LAION-SG: 带有结构化注释的大规模数据集,用于训练复杂的图像-文本模型
摘要
最近的文本到图像(T2I)生成技术在从文本生成高质量图像方面取得了显著成功。然而,现有的T2I模型在涉及多个对象和复杂关系的组合图像生成中表现不佳。我们将其归因于现有图像-文本数据集的局限性,这些数据集缺乏精确的对象间关系注释。为了解决这个问题,我们构建了LAION-SG,这是一个带有高质量场景图(SG)结构化注释的大规模数据集,能够精确描述多个对象的属性和关系,有效表示复杂场景中的语义结构。基于LAION-SG,我们训练了一个新的基础模型SDXL-SG,将结构化注释信息融入生成过程。大量实验表明,基于我们的LAION-SG训练的高级模型在复杂场景生成方面显著优于现有数据集上的模型。我们还引入了CompSG-Bench,一个评估组合图像生成的基准,为该领域建立了新的标准。
数据集
该数据集已发布在Hugging Face上。访问LAION-SG数据集。
环境设置
以下命令在Python 3.10和CUDA 11.8环境下测试通过。
安装所需包: bash pip3 install -r requirements.txt
训练
我们提供了一个使用LAION_SG数据集训练sdxl-sg的脚本。使用以下命令启动trainer_laion.py:
bash
CUDA_VISIBLE_DEVICES=0,1,2,3,4,5,6,7 accelerate launch --multi_gpu --num_processes 8 trainer_laion.py
推理
我们提供了一个简单的推理脚本,允许从LAION-SG数据集中生成图像。
-
下载预训练权重
点击这里下载预训练权重并将其放置在项目的根目录中。 -
创建输出目录
在项目的根目录中,创建一个名为output的文件夹以存储生成的图像: bash mkdir output完成步骤2后,项目目录应如下所示:
LAION-SG/ ├── configs/ ├── output/ ├── pics/ ├── pretrained/ ├── sgEncoderTraining/ ├── baseline3_100.pt ├── LICENSE ├── README.md ├── requirements.txt ├── test_laion.py ├── trainer_laion.py
-
运行推理脚本
使用以下命令执行推理: bash python test_laion.py生成的图像将保存在
output/文件夹中,文件名为{img_id}.jpg,其中{img_id}对应于LAION-SG数据集中的图像ID。
引用
@misc{li2024laionsgenhancedlargescaledataset, title={LAION-SG: An Enhanced Large-Scale Dataset for Training Complex Image-Text Models with Structural Annotations}, author={Zejian Li and Chenye Meng and Yize Li and Ling Yang and Shengyuan Zhang and Jiarui Ma and Jiayi Li and Guang Yang and Changyuan Yang and Zhiyuan Yang and Jinxiong Chang and Lingyun Sun}, year={2024}, eprint={2412.08580}, archivePrefix={arXiv}, primaryClass={cs.CV}, url={https://arxiv.org/abs/2412.08580}, }




